JsonValueTests.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #include <gtest/gtest.h>
  2. #include <StaticJsonBuffer.h>
  3. #include <JsonValue.h>
  4. class JsonValueTests : public ::testing::Test
  5. {
  6. protected:
  7. virtual void SetUp()
  8. {
  9. jsonValue1 = json.createValue();
  10. jsonValue2 = json.createValue();
  11. }
  12. StaticJsonBuffer<42> json;
  13. JsonValue jsonValue1;
  14. JsonValue jsonValue2;
  15. };
  16. TEST_F(JsonValueTests, CanStoreInteger)
  17. {
  18. jsonValue1 = 123;
  19. EXPECT_EQ(123, (int) jsonValue1);
  20. }
  21. TEST_F(JsonValueTests, CanStoreDouble)
  22. {
  23. jsonValue1 = 123.45;
  24. EXPECT_EQ(123.45, (double) jsonValue1);
  25. }
  26. TEST_F(JsonValueTests, CanStoreTrue)
  27. {
  28. jsonValue1 = true;
  29. EXPECT_TRUE((bool) jsonValue1);
  30. }
  31. TEST_F(JsonValueTests, CanStoreFalse)
  32. {
  33. jsonValue1 = false;
  34. EXPECT_FALSE((bool) jsonValue1);
  35. }
  36. TEST_F(JsonValueTests, CanStoreString)
  37. {
  38. jsonValue1 = "hello";
  39. EXPECT_STREQ("hello", (const char*) jsonValue1);
  40. }
  41. TEST_F(JsonValueTests, CanStoreObject)
  42. {
  43. JsonObject innerObject1 = json.createObject();
  44. jsonValue1 = innerObject1;
  45. EXPECT_EQ(innerObject1, (JsonObject) jsonValue1);
  46. }
  47. TEST_F(JsonValueTests, IntegerValuesAreCopied)
  48. {
  49. jsonValue1 = 123;
  50. jsonValue2 = jsonValue1;
  51. jsonValue1 = 456;
  52. EXPECT_EQ(123, (int) jsonValue2);
  53. }
  54. TEST_F(JsonValueTests, DoubleValuesAreCopied)
  55. {
  56. jsonValue1 = 123.45;
  57. jsonValue2 = jsonValue1;
  58. jsonValue1 = 456.78;
  59. EXPECT_EQ(123.45, (double) jsonValue2);
  60. }
  61. TEST_F(JsonValueTests, BooleanValuesAreCopied)
  62. {
  63. jsonValue1 = true;
  64. jsonValue2 = jsonValue1;
  65. jsonValue1 = false;
  66. EXPECT_TRUE((bool) jsonValue2);
  67. }
  68. TEST_F(JsonValueTests, CharPointersAreCopied)
  69. {
  70. jsonValue1 = "hello";
  71. jsonValue2 = jsonValue1;
  72. jsonValue1 = "world";
  73. EXPECT_STREQ("hello", (const char*) jsonValue2);
  74. }