Lines Matching refs:json
33 using nlohmann::json;
45 json op1 = R"({ "op": "add", "path": "/a/b/c", "value": "foo" })"_json;
46 json op2 = R"({ "path": "/a/b/c", "op": "add", "value": "foo" })"_json;
47 json op3 = R"({ "value": "foo", "path": "/a/b/c", "op": "add" })"_json;
56 json patch = R"([{ "op": "add", "path": "/a/b/c", "value": [ "foo", "bar" ] }])"_json;
62 json doc1 = R"({ "a": { "foo": 1 } })"_json;
80 json doc2 = R"({ "q": { "bar": 2 } })"_json;
83 CHECK_THROWS_AS(doc2.patch(patch), json::out_of_range&);
92 json doc = {1, 2, 3, 4};
93 json patch = {{{"op", "remove"}, {"path", "/1"}}};
94 CHECK(doc.patch(patch) == json({1, 3, 4}));
100 json doc = R"(
105 json patch = R"(
112 json expected = R"(
123 CHECK(doc.patch(json::diff(doc, expected)) == expected);
129 json doc = R"(
134 json patch = R"(
141 json expected = R"(
149 CHECK(doc.patch(json::diff(doc, expected)) == expected);
155 json doc = R"(
163 json patch = R"(
170 json expected = R"(
178 CHECK(doc.patch(json::diff(doc, expected)) == expected);
184 json doc = R"(
189 json patch = R"(
196 json expected = R"(
204 CHECK(doc.patch(json::diff(doc, expected)) == expected);
210 json doc = R"(
218 json patch = R"(
224 json expected = R"(
235 CHECK(doc.patch(json::diff(doc, expected)) == expected);
241 json doc = R"(
254 json patch = R"(
261 json expected = R"(
277 CHECK(doc.patch(json::diff(doc, expected)) == expected);
283 json doc = R"(
288 json patch = R"(
295 json expected = R"(
303 CHECK(doc.patch(json::diff(doc, expected)) == expected);
309 json doc = R"(
317 json patch = R"(
333 json doc = R"(
338 json patch = R"(
345 CHECK_THROWS_AS(doc.patch(patch), json::other_error&);
356 json doc = R"(
361 json patch = R"(
368 json expected = R"(
382 CHECK(doc.patch(json::diff(doc, expected)) == expected);
388 json doc = R"(
393 json patch = R"(
399 json expected = R"(
410 CHECK(doc.patch(json::diff(doc, expected)) == expected);
416 json doc = R"(
421 json patch = R"(
433 CHECK_THROWS_AS(doc.patch(patch), json::out_of_range&);
444 json doc = R"(
452 json patch = R"(
458 json expected = R"(
469 CHECK(doc.patch(json::diff(doc, expected)) == expected);
475 json doc = R"(
483 json patch = R"(
490 CHECK_THROWS_AS(doc.patch(patch), json::other_error&);
501 json doc = R"(
506 json patch = R"(
513 json expected = R"(
521 CHECK(doc.patch(json::diff(doc, expected)) == expected);
536 json doc = 17;
539 json patch = R"(
546 json expected = {1, 2, 3};
552 CHECK(doc.patch(json::diff(doc, expected)) == expected);
562 json doc = {0, 1, 2};
565 json patch = R"(
572 json expected = {0, 1, 2, 3};
578 CHECK(doc.patch(json::diff(doc, expected)) == expected);
585 json doc = R"(
598 json patch = R"(
605 json expected = R"(
622 CHECK(doc.patch(json::diff(doc, expected)) == expected);
627 json j = "string";
628 json patch = {{{"op", "replace"}, {"path", ""}, {"value", 1}}};
629 CHECK(j.patch(patch) == json(1));
636 json p1 = R"(
641 json source = R"(
646 json target = source.patch(p1);
651 json p2 = json::diff(target, source);
657 json j = {"good", "bad", "ugly"};
660 auto ptr = json::json_pointer("/2");
670 json flat = j.flatten();
682 json j;
683 json patch = {{"op", "add"}, {"path", ""}, {"value", 1}};
684 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
691 json j;
692 json patch = {"op", "add", "path", "", "value", 1};
693 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
703 json j;
704 json patch = {{{"foo", "bar"}}};
705 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
715 json j;
716 json patch = {{{"op", 1}}};
717 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
727 json j;
728 json patch = {{{"op", "foo"}, {"path", ""}}};
729 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
742 json j;
743 json patch = {{{"op", "add"}}};
744 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
754 json j;
755 json patch = {{{"op", "add"}, {"path", 1}}};
756 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
766 json j;
767 json patch = {{{"op", "add"}, {"path", ""}}};
768 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
778 json j = {1, 2};
779 json patch = {{{"op", "add"}, {"path", "/4"}, {"value", 4}}};
780 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
790 json j;
791 json patch = {{{"op", "remove"}}};
792 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
802 json j;
803 json patch = {{{"op", "remove"}, {"path", 1}}};
804 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
814 json j = {1, 2, 3};
815 json patch = {{{"op", "remove"}, {"path", "/17"}}};
816 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
823 json j = {{"foo", 1}, {"bar", 2}};
824 json patch = {{{"op", "remove"}, {"path", "/baz"}}};
825 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
832 json j = "string";
833 json patch = {{{"op", "remove"}, {"path", ""}}};
834 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
844 json j;
845 json patch = {{{"op", "replace"}}};
846 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
856 json j;
857 json patch = {{{"op", "replace"}, {"path", 1}}};
858 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
868 json j;
869 json patch = {{{"op", "replace"}, {"path", ""}}};
870 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
880 json j = {1, 2, 3};
881 json patch = {{{"op", "replace"}, {"path", "/17"}, {"value", 19}}};
882 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
889 json j = {{"foo", 1}, {"bar", 2}};
890 json patch = {{{"op", "replace"}, {"path", "/baz"}, {"value", 3}}};
891 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
901 json j;
902 json patch = {{{"op", "move"}}};
903 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
913 json j;
914 json patch = {{{"op", "move"}, {"path", 1}}};
915 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
925 json j;
926 json patch = {{{"op", "move"}, {"path", ""}}};
927 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
937 json j;
938 json patch = {{{"op", "move"}, {"path", ""}, {"from", 1}}};
939 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
949 json j = {1, 2, 3};
950 json patch = {{{"op", "move"}, {"path", "/0"}, {"from", "/5"}}};
951 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
958 json j = {{"foo", 1}, {"bar", 2}};
959 json patch = {{{"op", "move"}, {"path", "/baz"}, {"from", "/baz"}}};
960 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
970 json j;
971 json patch = {{{"op", "copy"}}};
972 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
982 json j;
983 json patch = {{{"op", "copy"}, {"path", 1}}};
984 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
994 json j;
995 json patch = {{{"op", "copy"}, {"path", ""}}};
996 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
1006 json j;
1007 json patch = {{{"op", "copy"}, {"path", ""}, {"from", 1}}};
1008 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
1018 json j = {1, 2, 3};
1019 json patch = {{{"op", "copy"}, {"path", "/0"}, {"from", "/5"}}};
1020 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
1027 json j = {{"foo", 1}, {"bar", 2}};
1028 json patch = {{{"op", "copy"}, {"path", "/fob"}, {"from", "/baz"}}};
1029 CHECK_THROWS_AS(j.patch(patch), json::out_of_range&);
1039 json j;
1040 json patch = {{{"op", "test"}}};
1041 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
1051 json j;
1052 json patch = {{{"op", "test"}, {"path", 1}}};
1053 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
1063 json j;
1064 json patch = {{{"op", "test"}, {"path", ""}}};
1065 CHECK_THROWS_AS(j.patch(patch), json::parse_error&);
1080 json doc = R"(
1088 json patch = R"(
1097 json result = R"(
1108 CHECK(doc.patch(json::diff(doc, result)) == result);
1114 json doc = R"(
1126 json patch = R"(
1133 json result = R"(
1147 CHECK(doc.patch(json::diff(doc, result)) == result);
1153 json patch = R"(
1160 json result = R"(
1168 CHECK(doc.patch(json::diff(doc, result)) == result);
1174 json patch = R"(
1181 json result = R"(
1194 CHECK(doc.patch(json::diff(doc, result)) == result);
1200 json patch = R"(
1207 json result = R"(
1223 CHECK(doc.patch(json::diff(doc, result)) == result);
1229 json patch = R"(
1236 json result = R"(
1249 CHECK(doc.patch(json::diff(doc, result)) == result);
1255 json patch = R"(
1262 CHECK_THROWS_AS(doc.patch(patch), json::other_error&);
1350 json suite = json::parse(f);