JsonVariant_Undefined_Tests.cpp 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. // Copyright Benoit Blanchon 2014-2016
  2. // MIT License
  3. //
  4. // Arduino JSON library
  5. // https://github.com/bblanchon/ArduinoJson
  6. // If you like this project, please add a star!
  7. #include <gtest/gtest.h>
  8. #include <ArduinoJson.h>
  9. class JsonVariant_Undefined_Tests : public ::testing::Test {
  10. protected:
  11. JsonVariant variant;
  12. };
  13. TEST_F(JsonVariant_Undefined_Tests, AsLongReturns0) {
  14. EXPECT_EQ(0, variant.as<long>());
  15. }
  16. TEST_F(JsonVariant_Undefined_Tests, AsUnsignedReturns0) {
  17. EXPECT_EQ(0, variant.as<unsigned>());
  18. }
  19. TEST_F(JsonVariant_Undefined_Tests, AsStringReturnsNull) {
  20. EXPECT_EQ(0, variant.asString());
  21. }
  22. TEST_F(JsonVariant_Undefined_Tests, AsDoubleReturns0) {
  23. EXPECT_EQ(0, variant.as<double>());
  24. }
  25. TEST_F(JsonVariant_Undefined_Tests, AsBoolReturnsFalse) {
  26. EXPECT_FALSE(variant.as<bool>());
  27. }
  28. TEST_F(JsonVariant_Undefined_Tests, AsArrayReturnInvalid) {
  29. EXPECT_EQ(JsonArray::invalid(), variant.as<JsonArray&>());
  30. }
  31. TEST_F(JsonVariant_Undefined_Tests, AsConstArrayReturnInvalid) {
  32. EXPECT_EQ(JsonArray::invalid(), variant.as<const JsonArray&>());
  33. }
  34. TEST_F(JsonVariant_Undefined_Tests, AsObjectReturnInvalid) {
  35. EXPECT_EQ(JsonObject::invalid(), variant.as<JsonObject&>());
  36. }
  37. TEST_F(JsonVariant_Undefined_Tests, AsConstObjectReturnInvalid) {
  38. EXPECT_EQ(JsonObject::invalid(), variant.as<const JsonObject&>());
  39. }
  40. TEST_F(JsonVariant_Undefined_Tests, AsArrayWrapperReturnInvalid) {
  41. EXPECT_EQ(JsonArray::invalid(), variant.asArray());
  42. }
  43. TEST_F(JsonVariant_Undefined_Tests, AsObjectWrapperReturnInvalid) {
  44. EXPECT_EQ(JsonObject::invalid(), variant.asObject());
  45. }