Skip to content

Commit 3e5ca99

Browse files
committed
json_object_iterator_adaptor tests
1 parent 38f6622 commit 3e5ca99

1 file changed

Lines changed: 51 additions & 0 deletions

File tree

test/corelib/src/json_object_tests.cpp

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1183,3 +1183,54 @@ TEST_CASE("test_json_merge_or_update_move")
11831183
}
11841184
}
11851185

1186+
TEST_CASE("json_object_iterator_adaptor tests")
1187+
{
1188+
SECTION("empty")
1189+
{
1190+
json j{};
1191+
1192+
auto it1 = j.object_range().begin();
1193+
auto it2 = it1;
1194+
1195+
CHECK((j.object_range().begin() == it1));
1196+
CHECK((it1 == it1));
1197+
CHECK_FALSE((it1 != it1));
1198+
CHECK_FALSE((it1 < it1));
1199+
CHECK_FALSE((it1 > it1));
1200+
CHECK_FALSE((it1 < it1));
1201+
CHECK_FALSE((it1 > it1));
1202+
CHECK((j.object_range().end() == it1));
1203+
CHECK((it1 == it2));
1204+
CHECK_FALSE((it1 != it2));
1205+
CHECK_FALSE((it1 < it2));
1206+
CHECK_FALSE((it1 > it2));
1207+
CHECK_FALSE((it1 < it2));
1208+
CHECK_FALSE((it1 > it2));
1209+
CHECK((j.object_range().end() == it2));
1210+
}
1211+
1212+
SECTION("test 1")
1213+
{
1214+
auto j = json::parse(R"(
1215+
{
1216+
"a" : "1",
1217+
"b" : [1,2,3]
1218+
}
1219+
)");
1220+
1221+
1222+
auto it1 = j.object_range().begin();
1223+
auto it2 = it1 + 1;
1224+
auto it3 = it2 + 1;
1225+
1226+
CHECK((j.object_range().begin() == it1));
1227+
CHECK((it1 == it1));
1228+
CHECK((it1 != it2));
1229+
CHECK((it1 < it2));
1230+
CHECK((it2 > it1));
1231+
CHECK((it2 < it3));
1232+
CHECK((it3 > it2));
1233+
CHECK((j.object_range().end() == it3));
1234+
}
1235+
}
1236+

0 commit comments

Comments
 (0)