%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
#include "json_utils.h" #include "gtest/gtest.h" TEST(JSONUtilsTest, EscapeJsonChars) { using node::EscapeJsonChars; EXPECT_EQ("abc", EscapeJsonChars("abc")); EXPECT_EQ("abc\\n", EscapeJsonChars("abc\n")); EXPECT_EQ("abc\\nabc", EscapeJsonChars("abc\nabc")); EXPECT_EQ("abc\\\\", EscapeJsonChars("abc\\")); EXPECT_EQ("abc\\\"", EscapeJsonChars("abc\"")); const std::string expected[0x20] = { "\\u0000", "\\u0001", "\\u0002", "\\u0003", "\\u0004", "\\u0005", "\\u0006", "\\u0007", "\\b", "\\t", "\\n", "\\u000b", "\\f", "\\r", "\\u000e", "\\u000f", "\\u0010", "\\u0011", "\\u0012", "\\u0013", "\\u0014", "\\u0015", "\\u0016", "\\u0017", "\\u0018", "\\u0019", "\\u001a", "\\u001b", "\\u001c", "\\u001d", "\\u001e", "\\u001f"}; for (int i = 0; i < 0x20; ++i) { char symbols[1] = { static_cast<char>(i) }; std::string input(symbols, 1); EXPECT_EQ(expected[i], EscapeJsonChars(input)); EXPECT_EQ("a" + expected[i], EscapeJsonChars("a" + input)); } }