diff --git a/test/StaticJsonBuffer_Array_Tests.cpp b/test/StaticJsonBuffer_Array_Tests.cpp new file mode 100644 index 00000000..ee59af2d --- /dev/null +++ b/test/StaticJsonBuffer_Array_Tests.cpp @@ -0,0 +1,48 @@ +// Copyright Benoit Blanchon 2014 +// MIT License +// +// Arduino JSON library +// https://github.com/bblanchon/ArduinoJson + +#include +#include +#include + +using namespace ArduinoJson; + +TEST(StaticJsonBuffer_Array_Tests, GrowsWithArray) { + StaticJsonBuffer json; + + JsonArray &array = json.createArray(); + ASSERT_EQ(JSON_ARRAY_SIZE(0), json.size()); + + array.add("hello"); + ASSERT_EQ(JSON_ARRAY_SIZE(1), json.size()); + + array.add("world"); + ASSERT_EQ(JSON_ARRAY_SIZE(2), json.size()); +} + +TEST(StaticJsonBuffer_Array_Tests, SucceedWhenBigEnough) { + StaticJsonBuffer json; + + JsonArray &array = json.createArray(); + ASSERT_TRUE(array.success()); +} + +TEST(StaticJsonBuffer_Array_Tests, FailsWhenTooSmall) { + StaticJsonBuffer json; + + JsonArray &array = json.createArray(); + ASSERT_FALSE(array.success()); +} + +TEST(StaticJsonBuffer_Array_Tests, ArrayDoesntGrowWhenFull) { + StaticJsonBuffer json; + + JsonArray &array = json.createArray(); + array.add("hello"); + array.add("world"); + + EXPECT_EQ(1, array.size()); +} diff --git a/test/StaticJsonBuffer_Object_Tests.cpp b/test/StaticJsonBuffer_Object_Tests.cpp index 4765cdd8..055014ad 100644 --- a/test/StaticJsonBuffer_Object_Tests.cpp +++ b/test/StaticJsonBuffer_Object_Tests.cpp @@ -39,3 +39,13 @@ TEST(StaticJsonBuffer_Object_Tests, FailsWhenTooSmall) { JsonObject &object = json.createObject(); ASSERT_FALSE(object.success()); } + +TEST(StaticJsonBuffer_Object_Tests, ObjectDoesntGrowWhenFull) { + StaticJsonBuffer json; + + JsonObject &obj = json.createObject(); + obj["hello"]; + obj["world"]; + + ASSERT_EQ(JSON_OBJECT_SIZE(1), json.size()); +}