diff --git a/Foundation/testsuite/src/StringTest.cpp b/Foundation/testsuite/src/StringTest.cpp index 3ba96c6ad..2a24bd915 100644 --- a/Foundation/testsuite/src/StringTest.cpp +++ b/Foundation/testsuite/src/StringTest.cpp @@ -1163,11 +1163,13 @@ void StringTest::testJSONString() assert (toJSON("\\", false) == "\\\\"); assert (toJSON("\"", false) == "\\\""); assert (toJSON("/", false) == "\\/"); + assert (toJSON("\a", false) == "\\a"); assert (toJSON("\b", false) == "\\b"); assert (toJSON("\f", false) == "\\f"); assert (toJSON("\n", false) == "\\n"); assert (toJSON("\r", false) == "\\r"); assert (toJSON("\t", false) == "\\t"); + assert (toJSON("\v", false) == "\\v"); assert (toJSON("a", false) == "a"); // ??? on MSVC, the assert macro expansion diff --git a/JSON/testsuite/src/JSONTest.cpp b/JSON/testsuite/src/JSONTest.cpp index 99dfe9d25..ef8918aa7 100644 --- a/JSON/testsuite/src/JSONTest.cpp +++ b/JSON/testsuite/src/JSONTest.cpp @@ -1870,9 +1870,16 @@ void JSONTest::testEscapeUnicode() std::stringstream ss; object->stringify(ss); - //assert(ss.str().compare("{\"name\":\"B\\u0000b\"}") == 0); + assert(ss.str().compare("{\"name\":\"\\u4E2D\"}") == 0); - std::cout << ss.str() << std::endl; + const unsigned char utf8Chars[] = {'{', '"', 'n', 'a', 'm', 'e', '"', ':', + '"', 'g', 195, 188, 'n', 't', 'e', 'r', '"', '}', 0}; + std::string utf8Text((const char*) utf8Chars); + parser.reset(); + result = parser.parse(utf8Text); + object = result.extract(); + ss.str(""); object->stringify(ss); + assert (ss.str() == "{\"name\":\"g\\u00FCnter\"}"); }