Files
ArduinoJson/test/JsonParser_String_Tests.cpp

59 lines
1.2 KiB
C++
Raw Normal View History

2014-10-16 21:54:42 +02:00
#include <gtest/gtest.h>
#include <ArduinoJson/StaticJsonBuffer.h>
#include <ArduinoJson/JsonValue.h>
class JsonParser_String_Tests : public testing::Test
{
protected:
void whenInputIs(const char* json)
{
strcpy(_jsonString, json);
_result = _jsonBuffer.parseValue(_jsonString);
}
void outputMustBe(const char* expected)
{
EXPECT_STREQ(expected, _result);
}
char _jsonString[256];
StaticJsonBuffer<42> _jsonBuffer;
const char* _result;
};
2014-10-17 19:57:00 +02:00
TEST_F(JsonParser_String_Tests, EmptyString)
{
whenInputIs("\"\"");
outputMustBe("");
}
2014-10-16 21:54:42 +02:00
TEST_F(JsonParser_String_Tests, SimpleString)
{
whenInputIs("\"hello world\"");
outputMustBe("hello world");
}
TEST_F(JsonParser_String_Tests, CurlyBraces)
{
whenInputIs("\"{hello:world}\"");
outputMustBe("{hello:world}");
}
TEST_F(JsonParser_String_Tests, SquareBraquets)
{
whenInputIs("\"[hello,world]\"");
outputMustBe("[hello,world]");
}
2014-10-17 19:57:00 +02:00
TEST_F(JsonParser_String_Tests, EscapedDoubleQuote)
2014-10-16 21:54:42 +02:00
{
whenInputIs("\"hello \\\"world\\\"\"");
outputMustBe("hello \"world\"");
2014-10-17 19:57:00 +02:00
}
TEST_F(JsonParser_String_Tests, EscapedSingleQuote)
{
whenInputIs("\"hello \\\'world\\\'\"");
outputMustBe("hello 'world'");
2014-10-16 21:54:42 +02:00
}