diff --git a/extras/tests/JsonDocument/constructor.cpp b/extras/tests/JsonDocument/constructor.cpp index d8a2acfa..7a15391c 100644 --- a/extras/tests/JsonDocument/constructor.cpp +++ b/extras/tests/JsonDocument/constructor.cpp @@ -51,7 +51,7 @@ TEST_CASE("JsonDocument constructor") { }); } - SECTION("JsonDocument(JsonObject)") { + SECTION("JsonDocument(JsonObject, Allocator*)") { JsonDocument doc1; JsonObject obj = doc1.to(); obj["hello"] = "world"; @@ -64,7 +64,17 @@ TEST_CASE("JsonDocument constructor") { }); } - SECTION("Construct from JsonArray") { + SECTION("JsonDocument(JsonObject)") { + JsonDocument doc1; + JsonObject obj = doc1.to(); + obj["hello"] = "world"; + + JsonDocument doc2(obj); + + REQUIRE(doc2.as() == "{\"hello\":\"world\"}"); + } + + SECTION("JsonDocument(JsonArray, Allocator*)") { JsonDocument doc1; JsonArray arr = doc1.to(); arr.add("hello"); @@ -77,7 +87,17 @@ TEST_CASE("JsonDocument constructor") { }); } - SECTION("Construct from JsonVariant") { + SECTION("JsonDocument(JsonArray)") { + JsonDocument doc1; + JsonArray arr = doc1.to(); + arr.add("hello"); + + JsonDocument doc2(arr); + + REQUIRE(doc2.as() == "[\"hello\"]"); + } + + SECTION("JsonDocument(JsonVariant, Allocator*)") { JsonDocument doc1; deserializeJson(doc1, "\"hello\""); @@ -88,4 +108,13 @@ TEST_CASE("JsonDocument constructor") { Allocate(sizeofString("hello")), }); } + + SECTION("JsonDocument(JsonVariant)") { + JsonDocument doc1; + deserializeJson(doc1, "\"hello\""); + + JsonDocument doc2(doc1.as()); + + REQUIRE(doc2.as() == "hello"); + } }