Sun, 14 Dec 2025 11:54:50 +0100
add more json array compare tests
| tests/test_json.c | file | annotate | diff | comparison | revisions |
--- a/tests/test_json.c Sun Dec 14 11:45:43 2025 +0100 +++ b/tests/test_json.c Sun Dec 14 11:54:50 2025 +0100 @@ -1524,6 +1524,43 @@ CX_TEST_ASSERT(i == j ? ret == 0 : ret != 0); } } + + // manual test + CxJsonValue *value; + cxJsonFromString(NULL, + "{ \"array1\" : [ 1, 2, 10, 20, true, false, null, {} ],\n" + " \"array2\" : [\n" + " 1,\n" + " 2,\n" + " 10,\n" + " 20,\n" + " true,\n" + " false,\n" + " null,\n" + " {},\n" + " ]\n" + "}\n", + &value); + CX_TEST_ASSERT(value); + CX_TEST_ASSERT(cxJsonIsObject(value)); + CxJsonValue *arr1 = cxJsonObjGet(value, "array1"); + CxJsonValue *arr2 = cxJsonObjGet(value, "array2"); + CX_TEST_ASSERT(arr1 && arr2); + CX_TEST_ASSERT(cxJsonIsArray(arr1) && cxJsonIsArray(arr2)); + CX_TEST_ASSERT(cxJsonCompare(arr1, arr2) == 0); + cxJsonValueFree(value); + + cxJsonFromString(NULL, "[ 0, 1, 2, 3, 4, 5 ]", &value); + CX_TEST_ASSERT(value); + CX_TEST_ASSERT(cxJsonIsArray(value)); + + CxJsonValue *value2 = cxJsonCreateArr(NULL); + int64_t ints[] = { 0, 1, 2, 3, 4, 5 }; + cxJsonArrAddIntegers(value2, ints, 6); + CX_TEST_ASSERT(cxJsonCompare(value, value2) == 0); + + cxJsonValueFree(value); + cxJsonValueFree(value2); } for(int i=0;i<6;i++) {