73c22de516
* Test equality of different length strings. * Add tab to json_pack whitespace test. * Test json_sprintf with empty result and invalid UTF. * Test json_get_alloc_funcs with NULL arguments. * Test invalid arguments. * Add test_chaos to test allocation failure code paths. * Remove redundant json_is_string checks from json_string_equal and json_string_copy. Both functions are static and can only be called with a json string. Fixes to issues found by test_chaos: * Fix crash on OOM in pack_unpack.c:read_string(). * Unconditionally free string in string_create upon allocation failure. Update load.c:parse_value() to reflect this. This resolves a leak on allocation failure for pack_unpack.c:pack_string() and value.c:json_sprintf(). Although not visible from CodeCoverage these changes significantly increase branch coverage. Especially in src/value.c where we previously covered 67.4% of branches and now cover 96.3% of branches. |
||
---|---|---|
.. | ||
check-exports | ||
Makefile.am | ||
run | ||
test_array.c | ||
test_chaos.c | ||
test_copy.c | ||
test_dump_callback.c | ||
test_dump.c | ||
test_equal.c | ||
test_load_callback.c | ||
test_load.c | ||
test_loadb.c | ||
test_memory_funcs.c | ||
test_number.c | ||
test_object.c | ||
test_pack.c | ||
test_simple.c | ||
test_sprintf.c | ||
test_unpack.c | ||
util.h |