std_string.cpp 701 B

1234567891011121314151617181920212223242526272829303132
  1. // ArduinoJson - https://arduinojson.org
  2. // Copyright © 2014-2022, Benoit BLANCHON
  3. // MIT License
  4. #include <ArduinoJson.h>
  5. #include <catch.hpp>
  6. static void eraseString(std::string& str) {
  7. char* p = const_cast<char*>(str.c_str());
  8. while (*p)
  9. *p++ = '*';
  10. }
  11. TEST_CASE("std::string") {
  12. DynamicJsonDocument doc(4096);
  13. JsonArray array = doc.to<JsonArray>();
  14. SECTION("add()") {
  15. std::string value("hello");
  16. array.add(value);
  17. eraseString(value);
  18. REQUIRE(std::string("hello") == array[0]);
  19. }
  20. SECTION("operator[]") {
  21. std::string value("world");
  22. array.add("hello");
  23. array[0] = value;
  24. eraseString(value);
  25. REQUIRE(std::string("world") == array[0]);
  26. }
  27. }