]> git.ipfire.org Git - thirdparty/json-c.git/commitdiff
Missing tests
authorAndrea Faulds <ajf@ajf.me>
Wed, 12 Feb 2014 09:51:51 +0000 (09:51 +0000)
committerAndrea Faulds <ajf@ajf.me>
Wed, 12 Feb 2014 09:51:51 +0000 (09:51 +0000)
tests/test_case.c [new file with mode: 0644]
tests/test_case.expected [new file with mode: 0644]
tests/test_case.test [new file with mode: 0755]

diff --git a/tests/test_case.c b/tests/test_case.c
new file mode 100644 (file)
index 0000000..936afee
--- /dev/null
@@ -0,0 +1,40 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stddef.h>
+#include <string.h>
+#include <assert.h>
+
+#include "json.h"
+#include "json_tokener.h"
+
+static void test_case_parse(void);
+
+int main(int argc, char **argv)
+{
+       MC_SET_DEBUG(1);
+
+       test_case_parse();
+}
+
+/* make sure only lowercase forms are parsed in strict mode */
+static void test_case_parse()
+{
+       struct json_tokener *tok;
+       json_object *new_obj;
+
+       tok = json_tokener_new();
+       json_tokener_set_flags(tok, JSON_TOKENER_STRICT);
+
+       new_obj = json_tokener_parse_ex(tok, "True", 4);
+       assert (new_obj == NULL);
+
+       new_obj = json_tokener_parse_ex(tok, "False", 5);
+       assert (new_obj == NULL);
+
+       new_obj = json_tokener_parse_ex(tok, "Null", 4);
+       assert (new_obj == NULL);
+
+       printf("OK\n");
+       
+       json_tokener_free(tok);
+}
diff --git a/tests/test_case.expected b/tests/test_case.expected
new file mode 100644 (file)
index 0000000..d86bac9
--- /dev/null
@@ -0,0 +1 @@
+OK
diff --git a/tests/test_case.test b/tests/test_case.test
new file mode 100755 (executable)
index 0000000..ad0a099
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+# Common definitions
+if test -z "$srcdir"; then
+    srcdir="${0%/*}"
+    test "$srcdir" = "$0" && srcdir=.
+    test -z "$srcdir" && srcdir=.
+fi
+. "$srcdir/test-defs.sh"
+
+run_output_test test_case
+exit $?