70 CX_TEST_ASSERT(cxJsonIsObject(obj)); |
70 CX_TEST_ASSERT(cxJsonIsObject(obj)); |
71 |
71 |
72 CxJsonValue *message = cxJsonObjGet(obj, "message"); |
72 CxJsonValue *message = cxJsonObjGet(obj, "message"); |
73 CX_TEST_ASSERT(cxJsonIsString(message)); |
73 CX_TEST_ASSERT(cxJsonIsString(message)); |
74 CX_TEST_ASSERT(0 == cx_strcmp( |
74 CX_TEST_ASSERT(0 == cx_strcmp( |
75 cx_strcast(cxJsonAsString(message)), |
75 cxJsonAsCxString(message), |
76 cx_str("success")) |
76 cx_str("success")) |
77 ); |
77 ); |
78 |
78 |
79 CxJsonValue *position = cxJsonObjGet(obj, "position"); |
79 CxJsonValue *position = cxJsonObjGet(obj, "position"); |
80 CX_TEST_ASSERT(cxJsonIsObject(position)); |
80 CX_TEST_ASSERT(cxJsonIsObject(position)); |
81 CxJsonValue *longitude = cxJsonObjGet(position, "longitude"); |
81 CxJsonValue *longitude = cxJsonObjGet(position, "longitude"); |
82 CX_TEST_ASSERT(cxJsonIsNumber(longitude)); |
82 CX_TEST_ASSERT(cxJsonIsNumber(longitude)); |
|
83 CX_TEST_ASSERT(!cxJsonIsInteger(longitude)); |
83 CX_TEST_ASSERT(cxJsonAsDouble(longitude) == -94.7099); |
84 CX_TEST_ASSERT(cxJsonAsDouble(longitude) == -94.7099); |
|
85 CX_TEST_ASSERT(cxJsonAsInteger(longitude) == -94); |
84 CxJsonValue *latitude = cxJsonObjGet(position, "latitude"); |
86 CxJsonValue *latitude = cxJsonObjGet(position, "latitude"); |
85 CX_TEST_ASSERT(cxJsonIsNumber(latitude)); |
87 CX_TEST_ASSERT(cxJsonIsNumber(latitude)); |
|
88 CX_TEST_ASSERT(!cxJsonIsInteger(latitude)); |
86 CX_TEST_ASSERT(cxJsonAsDouble(latitude) == 51.5539); |
89 CX_TEST_ASSERT(cxJsonAsDouble(latitude) == 51.5539); |
|
90 CX_TEST_ASSERT(cxJsonAsInteger(latitude) == 51); |
87 |
91 |
88 CxJsonValue *timestamp = cxJsonObjGet(obj, "timestamp"); |
92 CxJsonValue *timestamp = cxJsonObjGet(obj, "timestamp"); |
89 CX_TEST_ASSERT(cxJsonIsInteger(timestamp)); |
93 CX_TEST_ASSERT(cxJsonIsInteger(timestamp)); |
|
94 CX_TEST_ASSERT(cxJsonIsNumber(timestamp)); |
90 CX_TEST_ASSERT(cxJsonAsInteger(timestamp) == 1729348561); |
95 CX_TEST_ASSERT(cxJsonAsInteger(timestamp) == 1729348561); |
|
96 CX_TEST_ASSERT(cxJsonAsDouble(timestamp) == 1729348561.0); |
91 |
97 |
92 CxJsonValue *alive = cxJsonObjGet(obj, "alive"); |
98 CxJsonValue *alive = cxJsonObjGet(obj, "alive"); |
93 CX_TEST_ASSERT(cxJsonIsBool(alive)); |
99 CX_TEST_ASSERT(cxJsonIsBool(alive)); |
94 CX_TEST_ASSERT(cxJsonIsTrue(alive)); |
100 CX_TEST_ASSERT(cxJsonIsTrue(alive)); |
95 CX_TEST_ASSERT(!cxJsonIsFalse(alive)); |
101 CX_TEST_ASSERT(!cxJsonIsFalse(alive)); |
138 CX_TEST_ASSERT(obj); |
144 CX_TEST_ASSERT(obj); |
139 |
145 |
140 CxJsonValue *message = cxJsonObjGet(obj, "message"); |
146 CxJsonValue *message = cxJsonObjGet(obj, "message"); |
141 CX_TEST_ASSERT(cxJsonIsString(message)); |
147 CX_TEST_ASSERT(cxJsonIsString(message)); |
142 CX_TEST_ASSERT(0 == cx_strcmp( |
148 CX_TEST_ASSERT(0 == cx_strcmp( |
143 cx_strcast(cxJsonAsString(message)), |
149 cxJsonAsCxString(message), |
144 cx_str("success")) |
150 cx_str("success")) |
145 ); |
151 ); |
146 CxJsonValue *timestamp = cxJsonObjGet(obj, "__timestamp"); |
152 CxJsonValue *timestamp = cxJsonObjGet(obj, "__timestamp"); |
147 CX_TEST_ASSERT(message->type == CX_JSON_STRING); |
153 CX_TEST_ASSERT(message->type == CX_JSON_STRING); |
148 CX_TEST_ASSERT(cxJsonIsInteger(timestamp)); |
154 CX_TEST_ASSERT(cxJsonIsInteger(timestamp)); |