From 01949f7da0446d4c5d47cf298872b2e3cb41abc0 Mon Sep 17 00:00:00 2001 From: Benoit Blanchon Date: Wed, 5 Nov 2014 21:07:36 +0100 Subject: [PATCH] Added more tests of StaticJsonBuffer --- test/StaticJsonBuffer_Array_Tests.cpp | 48 ++++++++++++++++++++++++++ test/StaticJsonBuffer_Object_Tests.cpp | 10 ++++++ 2 files changed, 58 insertions(+) create mode 100644 test/StaticJsonBuffer_Array_Tests.cpp 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()); +}