std_string.cpp 686 B

12345678910111213141516171819202122232425262728293031
  1. // ArduinoJson - arduinojson.org
  2. // Copyright Benoit Blanchon 2014-2019
  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) *p++ = '*';
  9. }
  10. TEST_CASE("std::string") {
  11. DynamicJsonDocument doc(4096);
  12. JsonArray array = doc.to<JsonArray>();
  13. SECTION("add()") {
  14. std::string value("hello");
  15. array.add(value);
  16. eraseString(value);
  17. REQUIRE(std::string("hello") == array[0]);
  18. }
  19. SECTION("operator[]") {
  20. std::string value("world");
  21. array.add("hello");
  22. array[0] = value;
  23. eraseString(value);
  24. REQUIRE(std::string("world") == array[0]);
  25. }
  26. }