success.cpp 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // ArduinoJson - arduinojson.org
  2. // Copyright Benoit Blanchon 2014-2018
  3. // MIT License
  4. #include <ArduinoJson.h>
  5. #include <catch.hpp>
  6. TEST_CASE("JsonVariant::success()") {
  7. SECTION("ReturnsFalse_WhenUndefined") {
  8. JsonVariant variant;
  9. REQUIRE(false == variant.success());
  10. }
  11. SECTION("ReturnsTrue_WhenInteger") {
  12. JsonVariant variant = 0;
  13. REQUIRE(true == variant.success());
  14. }
  15. SECTION("ReturnsTrue_WhenEmptyArray") {
  16. DynamicJsonDocument doc;
  17. JsonArray& array = doc.to<JsonArray>();
  18. JsonVariant variant = array;
  19. REQUIRE(true == variant.success());
  20. }
  21. SECTION("ReturnsTrue_WhenEmptyObject") {
  22. DynamicJsonDocument doc;
  23. JsonObject& obj = doc.to<JsonObject>();
  24. JsonVariant variant = obj;
  25. REQUIRE(true == variant.success());
  26. }
  27. SECTION("ReturnsFalse_WhenInvalidArray") {
  28. JsonVariant variant = JsonArray::invalid();
  29. REQUIRE(false == variant.success());
  30. }
  31. SECTION("ReturnsFalse_WhenInvalidObject") {
  32. JsonVariant variant = JsonObject::invalid();
  33. REQUIRE(false == variant.success());
  34. }
  35. }