diff --git a/JsonParserTests/JsonStringTests.cpp b/JsonParserTests/JsonStringTests.cpp index 55df13a0..1e5e4fe8 100644 --- a/JsonParserTests/JsonStringTests.cpp +++ b/JsonParserTests/JsonStringTests.cpp @@ -1,6 +1,6 @@ -/* -* Arduino JSON library -* Benoit Blanchon 2014 - MIT License +/* +* Arduino JSON library +* Benoit Blanchon 2014 - MIT License */ #include "CppUnitTest.h" @@ -14,7 +14,7 @@ namespace ArduinoJsonParserTests TEST_CLASS(JsonStringTests) { const char* actual; - char json[256]; + char json[256]; JsonParser<32> parser; public: diff --git a/test/JsonParser_String_Tests.cpp b/test/JsonParser_String_Tests.cpp index 81000d3e..488adb8b 100644 --- a/test/JsonParser_String_Tests.cpp +++ b/test/JsonParser_String_Tests.cpp @@ -56,4 +56,52 @@ TEST_F(JsonParser_String_Tests, EscapedSingleQuote) { whenInputIs("\"hello \\\'world\\\'\""); outputMustBe("hello 'world'"); +} + +TEST_F(JsonParser_String_Tests, EscapedSolidus) +{ + whenInputIs("\"hello \\/world\\/\""); + outputMustBe("hello /world/"); +} + +TEST_F(JsonParser_String_Tests, EscapedReverseSolidus) +{ + whenInputIs("\"hello \\\\world\\\\\""); + outputMustBe("hello \\world\\"); +} + +TEST_F(JsonParser_String_Tests, EscapedBackspace) +{ + whenInputIs("\"hello \\bworld\\b"); + outputMustBe("hello \bworld\b"); +} + +TEST_F(JsonParser_String_Tests, EscapedFormfeed) +{ + whenInputIs("\"hello \\fworld\\f"); + outputMustBe("hello \fworld\f"); +} + +TEST_F(JsonParser_String_Tests, EscapedNewline) +{ + whenInputIs("\"hello \\nworld\\n"); + outputMustBe("hello \nworld\n"); +} + +TEST_F(JsonParser_String_Tests, EscapedCarriageReturn) +{ + whenInputIs("\"hello \\rworld\\r"); + outputMustBe("hello \rworld\r"); +} + +TEST_F(JsonParser_String_Tests, EscapedTab) +{ + whenInputIs("\"hello \\tworld\\t"); + outputMustBe("hello \tworld\t"); +} + +TEST_F(JsonParser_String_Tests, AllEscapedCharsTogether) +{ + whenInputIs("\"1\\\"2\\\\3\\/4\\b5\\f6\\n7\\r8\\t9\""); + outputMustBe("1\"2\\3/4\b5\f6\n7\r8\t9"); } \ No newline at end of file