summaryrefslogtreecommitdiff
path: root/json-glib/tests
diff options
context:
space:
mode:
Diffstat (limited to 'json-glib/tests')
-rw-r--r--json-glib/tests/invalid.c44
1 files changed, 40 insertions, 4 deletions
diff --git a/json-glib/tests/invalid.c b/json-glib/tests/invalid.c
index db9f69b..6c3c090 100644
--- a/json-glib/tests/invalid.c
+++ b/json-glib/tests/invalid.c
@@ -36,6 +36,33 @@ test_invalid_bareword (gconstpointer user_data)
g_object_unref (parser);
}
+static void
+test_invalid_assignment (gconstpointer user_data)
+{
+ const char *json = user_data;
+ GError *error = NULL;
+ JsonParser *parser;
+ gboolean res;
+
+ parser = json_parser_new ();
+ g_assert (JSON_IS_PARSER (parser));
+
+ if (g_test_verbose ())
+ g_print ("invalid data: '%s'...", json);
+
+ res = json_parser_load_from_data (parser, json, -1, &error);
+
+ g_assert (!res);
+ g_assert (error != NULL);
+
+ if (g_test_verbose ())
+ g_print ("expected error: %s\n", error->message);
+
+ g_clear_error (&error);
+
+ g_object_unref (parser);
+}
+
static const struct
{
const char *path;
@@ -43,10 +70,19 @@ static const struct
gpointer func;
} test_invalid[] = {
/* bareword */
- { "invalid-bareword-1", "rainbows", test_invalid_bareword },
- { "invalid-bareword-2", "[ unicorns ]", test_invalid_bareword },
- { "invalid-bareword-3", "{ \"foo\" : ponies }", test_invalid_bareword },
- { "invalid-bareword-4", "[ 3, 2, 1, lift_off ]", test_invalid_bareword },
+ { "bareword-1", "rainbows", test_invalid_bareword },
+ { "bareword-2", "[ unicorns ]", test_invalid_bareword },
+ { "bareword-3", "{ \"foo\" : ponies }", test_invalid_bareword },
+ { "bareword-4", "[ 3, 2, 1, lift_off ]", test_invalid_bareword },
+ { "bareword-5", "{ foo : 42 }", test_invalid_bareword },
+
+ /* assignment */
+ { "assignment-1", "var foo", test_invalid_assignment },
+ { "assignment-2", "var foo = no", test_invalid_assignment },
+ { "assignment-3", "var = true", test_invalid_assignment },
+ { "assignment-4", "var blah = 42:", test_invalid_assignment },
+ { "assignment-5", "let foo = true;", test_invalid_assignment },
+
};
static guint n_test_invalid = G_N_ELEMENTS (test_invalid);