// Copyright Benoit Blanchon 2014 // MIT License // // Arduino JSON library // https://github.com/bblanchon/ArduinoJson #include #include #include #include "Printers.hpp" using namespace ArduinoJson; class JsonVariant_Undefined_Tests : public ::testing::Test { protected: JsonVariant variant; }; TEST_F(JsonVariant_Undefined_Tests, SuccessReturnsFalse) { EXPECT_FALSE(variant.success()); } TEST_F(JsonVariant_Undefined_Tests, AsLongReturns0) { EXPECT_EQ(0, variant.as()); } TEST_F(JsonVariant_Undefined_Tests, AsStringReturnsNull) { EXPECT_EQ(0, variant.asString()); } TEST_F(JsonVariant_Undefined_Tests, AsDoubleReturns0) { EXPECT_EQ(0, variant.as()); } TEST_F(JsonVariant_Undefined_Tests, AsBoolReturnsFalse) { EXPECT_FALSE(variant.as()); } TEST_F(JsonVariant_Undefined_Tests, AsArrayReturnInvalid) { EXPECT_EQ(JsonArray::invalid(), variant.asArray()); } TEST_F(JsonVariant_Undefined_Tests, AsObjectReturnInvalid) { EXPECT_EQ(JsonObject::invalid(), variant.asObject()); } TEST_F(JsonVariant_Undefined_Tests, CanBeSetToLong) { variant = 0L; EXPECT_TRUE(variant.success()); } TEST_F(JsonVariant_Undefined_Tests, CanBeSetToDouble) { variant = 0.0; EXPECT_TRUE(variant.success()); } TEST_F(JsonVariant_Undefined_Tests, CanBeSetToString) { variant = static_cast(NULL); EXPECT_TRUE(variant.success()); } TEST_F(JsonVariant_Undefined_Tests, CanBeSetToBool) { variant = false; EXPECT_TRUE(variant.success()); } TEST_F(JsonVariant_Undefined_Tests, CanBeSetToArray) { variant = JsonArray::invalid(); EXPECT_TRUE(variant.success()); } TEST_F(JsonVariant_Undefined_Tests, CanBeSetToObject) { variant = JsonObject::invalid(); EXPECT_TRUE(variant.success()); }