JsonParser_String_Tests.cpp 1002 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #include <gtest/gtest.h>
  2. #include <ArduinoJson/StaticJsonBuffer.h>
  3. #include <ArduinoJson/JsonValue.h>
  4. class JsonParser_String_Tests : public testing::Test
  5. {
  6. protected:
  7. void whenInputIs(const char* json)
  8. {
  9. strcpy(_jsonString, json);
  10. _result = _jsonBuffer.parseValue(_jsonString);
  11. }
  12. void outputMustBe(const char* expected)
  13. {
  14. EXPECT_STREQ(expected, _result);
  15. }
  16. char _jsonString[256];
  17. StaticJsonBuffer<42> _jsonBuffer;
  18. const char* _result;
  19. };
  20. TEST_F(JsonParser_String_Tests, SimpleString)
  21. {
  22. whenInputIs("\"hello world\"");
  23. outputMustBe("hello world");
  24. }
  25. TEST_F(JsonParser_String_Tests, CurlyBraces)
  26. {
  27. whenInputIs("\"{hello:world}\"");
  28. outputMustBe("{hello:world}");
  29. }
  30. TEST_F(JsonParser_String_Tests, SquareBraquets)
  31. {
  32. whenInputIs("\"[hello,world]\"");
  33. outputMustBe("[hello,world]");
  34. }
  35. TEST_F(JsonParser_String_Tests, EscapedQuote)
  36. {
  37. whenInputIs("\"hello \\\"world\\\"\"");
  38. outputMustBe("hello \"world\"");
  39. }