Add checks to unit test readme

This commit is contained in:
Florian Albrechtskirchinger 2022-08-02 08:10:00 +02:00
parent d354ac42c2
commit 58cef11a28
No known key found for this signature in database
GPG Key ID: 19618CE9B2D4BE6D

View File

@ -106,12 +106,10 @@ TEST_CASE("README" * doctest::skip())
json j = "{ \"happy\": true, \"pi\": 3.141 }"_json; // NOLINT(modernize-raw-string-literal) json j = "{ \"happy\": true, \"pi\": 3.141 }"_json; // NOLINT(modernize-raw-string-literal)
// or even nicer with a raw string literal // or even nicer with a raw string literal
auto j2 = R"( auto j2 = R"({
{ "happy": true,
"happy": true, "pi": 3.141
"pi": 3.141 })"_json;
}
)"_json;
// or explicitly // or explicitly
auto j3 = json::parse(R"({"happy": true, "pi": 3.141})"); auto j3 = json::parse(R"({"happy": true, "pi": 3.141})");
@ -160,10 +158,10 @@ TEST_CASE("README" * doctest::skip())
CHECK(foo == true); CHECK(foo == true);
// other stuff // other stuff
j.size(); // 3 entries CHECK(j.size() == 3); // 3 entries
j.empty(); // false CHECK_FALSE(j.empty()); // false
j.type(); // json::value_t::array CHECK(j.type() == json::value_t::array); // json::value_t::array
j.clear(); // the array is empty again j.clear(); // the array is empty again
// create an object // create an object
json o; json o;
@ -172,6 +170,7 @@ TEST_CASE("README" * doctest::skip())
o["baz"] = 3.141; o["baz"] = 3.141;
// find an entry // find an entry
CHECK(o.find("foo") != o.end());
if (o.find("foo") != o.end()) if (o.find("foo") != o.end())
{ {
// there is an entry with key "foo" // there is an entry with key "foo"
@ -266,9 +265,9 @@ TEST_CASE("README" * doctest::skip())
{ {
// a JSON value // a JSON value
json j_original = R"({ json j_original = R"({
"baz": ["one", "two", "three"], "baz": ["one", "two", "three"],
"foo": "bar" "foo": "bar"
})"_json; })"_json;
// access members with a JSON pointer (RFC 6901) // access members with a JSON pointer (RFC 6901)
j_original["/baz/1"_json_pointer]; j_original["/baz/1"_json_pointer];
@ -276,10 +275,10 @@ TEST_CASE("README" * doctest::skip())
// a JSON patch (RFC 6902) // a JSON patch (RFC 6902)
json j_patch = R"([ json j_patch = R"([
{ "op": "replace", "path": "/baz", "value": "boo" }, { "op": "replace", "path": "/baz", "value": "boo" },
{ "op": "add", "path": "/hello", "value": ["world"] }, { "op": "add", "path": "/hello", "value": ["world"] },
{ "op": "remove", "path": "/foo"} { "op": "remove", "path": "/foo"}
])"_json; ])"_json;
// apply the patch // apply the patch
json j_result = j_original.patch(j_patch); json j_result = j_original.patch(j_patch);