@@ -2363,6 +2363,64 @@ static void test_json_object_merge_deep()
23632363 ));
23642364}
23652365
2366+ static void test_json_get_type_as_string ()
2367+ {
2368+ {
2369+ JsonElement * element = JsonStringCreate ("foo" );
2370+ const char * expected = "string" ;
2371+ const char * actual = JsonGetTypeAsString (element );
2372+ assert_string_equal (expected , actual );
2373+ JsonDestroy (element );
2374+ }
2375+
2376+ {
2377+ JsonElement * element = JsonIntegerCreate (42 );
2378+ const char * expected = "number" ;
2379+ const char * actual = JsonGetTypeAsString (element );
2380+ assert_string_equal (expected , actual );
2381+ JsonDestroy (element );
2382+ }
2383+
2384+ {
2385+ JsonElement * element = JsonRealCreate (3.14 );
2386+ const char * expected = "number" ;
2387+ const char * actual = JsonGetTypeAsString (element );
2388+ assert_string_equal (expected , actual );
2389+ JsonDestroy (element );
2390+ }
2391+
2392+ {
2393+ JsonElement * element = JsonBoolCreate (true);
2394+ const char * expected = "boolean" ;
2395+ const char * actual = JsonGetTypeAsString (element );
2396+ assert_string_equal (expected , actual );
2397+ JsonDestroy (element );
2398+ }
2399+
2400+ {
2401+ JsonElement * element = JsonNullCreate (true);
2402+ const char * expected = "null" ;
2403+ const char * actual = JsonGetTypeAsString (element );
2404+ assert_string_equal (expected , actual );
2405+ JsonDestroy (element );
2406+ }
2407+
2408+ {
2409+ JsonElement * element = JsonObjectCreate (0 );
2410+ const char * expected = "object" ;
2411+ const char * actual = JsonGetTypeAsString (element );
2412+ assert_string_equal (expected , actual );
2413+ JsonDestroy (element );
2414+ }
2415+
2416+ {
2417+ JsonElement * element = JsonArrayCreate (0 );
2418+ const char * expected = "array" ;
2419+ const char * actual = JsonGetTypeAsString (element );
2420+ assert_string_equal (expected , actual );
2421+ JsonDestroy (element );
2422+ }
2423+ }
23662424
23672425int main ()
23682426{
@@ -2435,6 +2493,7 @@ int main()
24352493 unit_test (test_json_null_not_null ),
24362494 unit_test (test_json_object_merge_deep ),
24372495 unit_test (test_compare_container_type_mismatch ),
2496+ unit_test (test_json_get_type_as_string ),
24382497 };
24392498
24402499 return run_tests (tests );
0 commit comments