more test cases
This commit is contained in:
parent
8ed9eaa629
commit
441a6f267f
3 changed files with 62 additions and 16 deletions
|
@ -1034,23 +1034,26 @@ TEST_CASE("other constructors and destructor")
|
|||
|
||||
TEST_CASE("object inspection")
|
||||
{
|
||||
SECTION("dump")
|
||||
SECTION("serialization")
|
||||
{
|
||||
json j {{"object", json::object()}, {"array", {1, 2, 3, 4}}, {"number", 42}, {"boolean", false}, {"null", nullptr}, {"string", "Hello world"} };
|
||||
|
||||
SECTION("no indent")
|
||||
{
|
||||
CHECK(j.dump() == "{\"array\":[1,2,3,4],\"boolean\":false,\"null\":null,\"number\":42,\"object\":{},\"string\":\"Hello world\"}");
|
||||
CHECK(j.dump() ==
|
||||
"{\"array\":[1,2,3,4],\"boolean\":false,\"null\":null,\"number\":42,\"object\":{},\"string\":\"Hello world\"}");
|
||||
}
|
||||
|
||||
SECTION("indent=0")
|
||||
{
|
||||
CHECK(j.dump(0) == "{\n\"array\": [\n1,\n2,\n3,\n4\n],\n\"boolean\": false,\n\"null\": null,\n\"number\": 42,\n\"object\": {},\n\"string\": \"Hello world\"\n}");
|
||||
CHECK(j.dump(0) ==
|
||||
"{\n\"array\": [\n1,\n2,\n3,\n4\n],\n\"boolean\": false,\n\"null\": null,\n\"number\": 42,\n\"object\": {},\n\"string\": \"Hello world\"\n}");
|
||||
}
|
||||
|
||||
SECTION("indent=4")
|
||||
{
|
||||
CHECK(j.dump(4) == "{\n \"array\": [\n 1,\n 2,\n 3,\n 4\n ],\n \"boolean\": false,\n \"null\": null,\n \"number\": 42,\n \"object\": {},\n \"string\": \"Hello world\"\n}");
|
||||
CHECK(j.dump(4) ==
|
||||
"{\n \"array\": [\n 1,\n 2,\n 3,\n 4\n ],\n \"boolean\": false,\n \"null\": null,\n \"number\": 42,\n \"object\": {},\n \"string\": \"Hello world\"\n}");
|
||||
}
|
||||
|
||||
SECTION("dump and floating-point numbers")
|
||||
|
@ -1157,3 +1160,42 @@ TEST_CASE("object inspection")
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("value conversion")
|
||||
{
|
||||
SECTION("get an object (explicit)")
|
||||
{
|
||||
json::object_t o_reference = {{"object", json::object()}, {"array", {1, 2, 3, 4}}, {"number", 42}, {"boolean", false}, {"null", nullptr}, {"string", "Hello world"} };
|
||||
json j(o_reference);
|
||||
|
||||
SECTION("json::object_t")
|
||||
{
|
||||
json::object_t o = j.get<std::map<std::string, json>>();
|
||||
CHECK(json(o) == j);
|
||||
}
|
||||
|
||||
SECTION("std::map<std::string, json>")
|
||||
{
|
||||
std::map<std::string, json> o = j.get<std::map<std::string, json>>();
|
||||
CHECK(json(o) == j);
|
||||
}
|
||||
|
||||
SECTION("std::multimap<std::string, json>")
|
||||
{
|
||||
std::multimap<std::string, json> o = j.get<std::multimap<std::string, json>>();
|
||||
CHECK(json(o) == j);
|
||||
}
|
||||
|
||||
SECTION("std::unordered_map<std::string, json>")
|
||||
{
|
||||
std::unordered_map<std::string, json> o = j.get<std::unordered_map<std::string, json>>();
|
||||
CHECK(json(o) == j);
|
||||
}
|
||||
|
||||
SECTION("std::unordered_multimap<std::string, json>")
|
||||
{
|
||||
std::unordered_multimap<std::string, json> o = j.get<std::unordered_multimap<std::string, json>>();
|
||||
CHECK(json(o) == j);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue