X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=test%2Fsuites%2Fapi%2Ftest_object.c;h=4a19016b385a4ff84e452d362cf46a07a1070b79;hb=a3079747313f8d4f2e3954b29a1fb7ee67cd5d2e;hp=59f85b972211509f0925105ab1ef6605bb9cc222;hpb=a2381948bb7871aee7c55c6918953bfbdf9c3eb1;p=jansson.git diff --git a/test/suites/api/test_object.c b/test/suites/api/test_object.c index 59f85b9..4a19016 100644 --- a/test/suites/api/test_object.c +++ b/test/suites/api/test_object.c @@ -437,6 +437,24 @@ static void test_preserve_order() json_decref(object); } +static void test_foreach() +{ + const char *key; + json_t *object1, *object2, *value; + + object1 = json_pack("{sisisi}", "foo", 1, "bar", 2, "baz", 3); + object2 = json_object(); + + json_object_foreach(object1, key, value) + json_object_set(object2, key, value); + + if(!json_equal(object1, object2)) + fail("json_object_foreach failed to iterate all key-value pairs"); + + json_decref(object1); + json_decref(object2); +} + static void run_tests() { test_misc(); @@ -446,4 +464,5 @@ static void run_tests() test_set_nocheck(); test_iterators(); test_preserve_order(); + test_foreach(); }