// ArduinoJson - https://arduinojson.org // Copyright © 2014-2023, Benoit BLANCHON // MIT License #include #include #include TEST_CASE("operator<<(std::ostream)") { DynamicJsonDocument doc(4096); std::ostringstream os; SECTION("JsonVariant containing false") { JsonVariant variant = doc.to(); variant.set(false); os << variant; REQUIRE("false" == os.str()); } SECTION("JsonVariant containing string") { JsonVariant variant = doc.to(); variant.set("coucou"); os << variant; REQUIRE("\"coucou\"" == os.str()); } SECTION("JsonObject") { JsonObject object = doc.to(); object["key"] = "value"; os << object; REQUIRE("{\"key\":\"value\"}" == os.str()); } SECTION("MemberProxy") { JsonObject object = doc.to(); object["key"] = "value"; os << object["key"]; REQUIRE("\"value\"" == os.str()); } SECTION("JsonArray") { JsonArray array = doc.to(); array.add("value"); os << array; REQUIRE("[\"value\"]" == os.str()); } SECTION("ElementProxy") { JsonArray array = doc.to(); array.add("value"); os << array[0]; REQUIRE("\"value\"" == os.str()); } }