remove.cpp 762 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // ArduinoJson - arduinojson.org
  2. // Copyright Benoit Blanchon 2014-2019
  3. // MIT License
  4. #include <ArduinoJson.h>
  5. #include <stdint.h>
  6. #include <catch.hpp>
  7. static const char* null = 0;
  8. TEST_CASE("JsonVariant::remove()") {
  9. DynamicJsonDocument doc(4096);
  10. JsonVariant var = doc.to<JsonVariant>();
  11. SECTION("remove(int)") {
  12. var.add(1);
  13. var.add(2);
  14. var.add(3);
  15. var.remove(1);
  16. REQUIRE(var.as<std::string>() == "[1,3]");
  17. }
  18. SECTION("remove(const char *)") {
  19. var["a"] = 1;
  20. var["b"] = 2;
  21. var.remove("a");
  22. REQUIRE(var.as<std::string>() == "{\"b\":2}");
  23. }
  24. SECTION("remove(std::string)") {
  25. var["a"] = 1;
  26. var["b"] = 2;
  27. var.remove(std::string("b"));
  28. REQUIRE(var.as<std::string>() == "{\"a\":1}");
  29. }
  30. }