From 89d09813c376a1ba59a5fd015dd905e2778c7407 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Thu, 3 Sep 2009 17:56:00 +0300 Subject: Add reference stealing functions for inserting values to objects and arrays The non-stealing functions are now just simple wrappers around these. --- test/testprogs/test_array.c | 10 ++++++++++ test/testprogs/test_object.c | 8 +++++++- 2 files changed, 17 insertions(+), 1 deletion(-) (limited to 'test') 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); -- cgit v1.1