size.cpp 574 B

12345678910111213141516171819202122232425262728293031
  1. // ArduinoJson - arduinojson.org
  2. // Copyright Benoit Blanchon 2014-2019
  3. // MIT License
  4. #include <ArduinoJson.h>
  5. #include <catch.hpp>
  6. using namespace ARDUINOJSON_NAMESPACE;
  7. TEST_CASE("MemberProxy::size()") {
  8. DynamicJsonDocument doc(4096);
  9. MemberProxy<JsonDocument&, const char*> mp = doc["hello"];
  10. SECTION("returns 0") {
  11. REQUIRE(mp.size() == 0);
  12. }
  13. SECTION("as an array, return 2") {
  14. mp.add(1);
  15. mp.add(2);
  16. REQUIRE(mp.size() == 2);
  17. }
  18. SECTION("as an object, return 2") {
  19. mp["a"] = 1;
  20. mp["b"] = 2;
  21. REQUIRE(mp.size() == 2);
  22. }
  23. }