aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorPetri Lehtinen <petri@digip.org>2009-09-03 17:56:00 +0300
committerPetri Lehtinen <petri@digip.org>2009-09-04 09:52:37 +0300
commit89d09813c376a1ba59a5fd015dd905e2778c7407 (patch)
tree1bce355601fc6fa68012340252367208fe5e94c2 /test
parent5ac491464256790b46ebffbf0e20e4c4f47a5bb2 (diff)
downloadjansson-89d09813c376a1ba59a5fd015dd905e2778c7407.zip
jansson-89d09813c376a1ba59a5fd015dd905e2778c7407.tar.gz
jansson-89d09813c376a1ba59a5fd015dd905e2778c7407.tar.bz2
Add reference stealing functions for inserting values to objects and arrays
The non-stealing functions are now just simple wrappers around these.
Diffstat (limited to 'test')
-rw-r--r--test/testprogs/test_array.c10
-rw-r--r--test/testprogs/test_object.c8
2 files changed, 17 insertions, 1 deletions
diff --git a/test/testprogs/test_array.c b/test/testprogs/test_array.c
index 0ebc3d5..97a8513 100644
--- a/test/testprogs/test_array.c
+++ b/test/testprogs/test_array.c
@@ -85,6 +85,16 @@ int main()
fail("got wrong value");
}
+ json_array_set_new(array, 15, json_integer(123));
+ value = json_array_get(array, 15);
+ if(!json_is_integer(value) || json_integer_value(value) != 123)
+ fail("json_array_set_new works incorrectly");
+
+ json_array_append_new(array, json_integer(321));
+ value = json_array_get(array, json_array_size(array) - 1);
+ if(!json_is_integer(value) || json_integer_value(value) != 321)
+ fail("json_array_append_new works incorrectly");
+
json_decref(five);
json_decref(seven);
json_decref(array);
diff --git a/test/testprogs/test_object.c b/test/testprogs/test_object.c
index 9f72374..1b42c02 100644
--- a/test/testprogs/test_object.c
+++ b/test/testprogs/test_object.c
@@ -73,7 +73,7 @@ int main()
fail("unable to delete an existing key");
- /* add many keys to rehashing */
+ /* add many keys to initiate rehashing */
if(json_object_set(object, "a", string))
fail("unable to set value");
@@ -93,6 +93,12 @@ int main()
if(json_object_set(object, "e", string))
fail("unable to set value");
+
+ json_object_set_new(object, "foo", json_integer(123));
+ value = json_object_get(object, "foo");
+ if(!json_is_integer(value) || json_integer_value(value) != 123)
+ fail("json_object_set_new works incorrectly");
+
json_decref(string);
json_decref(other_string);
json_decref(object);