Files
ArduinoJson/tests/JsonArray_Parser_Tests.cpp

61 lines
1.3 KiB
C++
Raw Normal View History

2014-10-14 17:16:21 +02:00
#include <gtest/gtest.h>
#include <StaticJsonBuffer.h>
2014-10-14 21:24:26 +02:00
#include <JsonValue.h>
2014-10-14 17:16:21 +02:00
class JsonArray_Parser_Tests : public testing::Test
{
protected:
StaticJsonBuffer<42> json;
};
TEST_F(JsonArray_Parser_Tests, EmptyArray)
{
JsonArray array = json.parseArray("[]");
2014-10-14 17:28:57 +02:00
EXPECT_TRUE(array.success());
EXPECT_EQ(0, array.size());
}
TEST_F(JsonArray_Parser_Tests, ArrayWithNoEnd)
{
JsonArray array = json.parseArray("[");
EXPECT_FALSE(array.success());
EXPECT_EQ(0, array.size());
}
2014-10-14 18:01:49 +02:00
TEST_F(JsonArray_Parser_Tests, EmptyArrayWithLeadingSpaces)
{
JsonArray array = json.parseArray(" []");
EXPECT_TRUE(array.success());
EXPECT_EQ(0, array.size());
}
2014-10-14 17:28:57 +02:00
TEST_F(JsonArray_Parser_Tests, Garbage)
{
JsonArray array = json.parseArray("%*$£¤");
EXPECT_FALSE(array.success());
2014-10-14 17:16:21 +02:00
EXPECT_EQ(0, array.size());
2014-10-14 21:24:26 +02:00
}
TEST_F(JsonArray_Parser_Tests, OneInteger)
{
JsonArray array = json.parseArray("[42]");
EXPECT_TRUE(array.success());
EXPECT_EQ(1, array.size());
EXPECT_EQ(42, static_cast<int>(array[0]));
2014-10-14 21:48:22 +02:00
}
TEST_F(JsonArray_Parser_Tests, TwoIntegers)
{
JsonArray array = json.parseArray("[42,84]");
EXPECT_TRUE(array.success());
EXPECT_EQ(2, array.size());
EXPECT_EQ(42, static_cast<int>(array[0]));
EXPECT_EQ(84, static_cast<int>(array[1]));
2014-10-14 17:16:21 +02:00
}