summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoruzhas <[email protected]>2023-07-13 15:16:15 +0300
committeruzhas <[email protected]>2023-07-13 15:16:15 +0300
commit69e3c03a79c3b497154302c24a79a5ab278e7904 (patch)
tree96223cd8c1ae76d2fb98671e50580579a5a964a3
parent0d3df705d3ae205e6b74f7a207191826123d7cc0 (diff)
fixed value escaping
-rw-r--r--ydb/library/yql/providers/common/codec/yql_json_codec.cpp2
-rw-r--r--ydb/library/yql/providers/common/codec/yql_json_codec_ut.cpp12
2 files changed, 7 insertions, 7 deletions
diff --git a/ydb/library/yql/providers/common/codec/yql_json_codec.cpp b/ydb/library/yql/providers/common/codec/yql_json_codec.cpp
index d6318fbd7ea..eeedb07db0c 100644
--- a/ydb/library/yql/providers/common/codec/yql_json_codec.cpp
+++ b/ydb/library/yql/providers/common/codec/yql_json_codec.cpp
@@ -36,7 +36,7 @@ TJsonWriterConfig MakeJsonConfig() {
config.FormatOutput = false;
config.SortKeys = false;
config.ValidateUtf8 = false;
- config.DontEscapeStrings = true;
+ config.DontEscapeStrings = false;
config.WriteNanAsString = true;
return config;
diff --git a/ydb/library/yql/providers/common/codec/yql_json_codec_ut.cpp b/ydb/library/yql/providers/common/codec/yql_json_codec_ut.cpp
index 07636e29f00..0c6291f3282 100644
--- a/ydb/library/yql/providers/common/codec/yql_json_codec_ut.cpp
+++ b/ydb/library/yql/providers/common/codec/yql_json_codec_ut.cpp
@@ -110,9 +110,9 @@ Y_UNIT_TEST_SUITE(SerializeJson) {
Y_UNIT_TEST(ScalarJson) {
TTestContext ctx;
auto type = TDataType::Create(NUdf::TDataType<NUdf::TJson>::Id, ctx.TypeEnv);
- auto value = ctx.Vb.NewString("\"some string с русскими йЁ\"");
+ auto value = ctx.Vb.NewString("\"some string с русскими йЁ");
auto json = WriteValueToFuncJsonStr(value, type);
- UNIT_ASSERT_VALUES_EQUAL(json, "\"\"some string с русскими йЁ\"\"");
+ UNIT_ASSERT_VALUES_EQUAL(json, "\"\\\"some string \xD1\x81 \xD1\x80\xD1\x83\xD1\x81\xD1\x81\xD0\xBA\xD0\xB8\xD0\xBC\xD0\xB8 \xD0\xB9\xD0\x81\"");
}
Y_UNIT_TEST(ComplexJson) {
@@ -125,11 +125,11 @@ Y_UNIT_TEST_SUITE(SerializeJson) {
NUdf::TUnboxedValue* items;
auto value = ctx.Vb.NewArray(2, items);
- items[0] = ctx.Vb.NewString("{\"a\":500,\"b\":[1,2,3]}");
+ items[0] = ctx.Vb.NewString(R"({"a":500,"b":[1,2,3]})");
items[1] = NUdf::TUnboxedValuePod(ui32(73));
auto json = WriteValueToExportJsonStr(value, type);
- UNIT_ASSERT_VALUES_EQUAL(json, "{\"X\":\"{\"a\":500,\"b\":[1,2,3]}\",\"Y\":73}");
+ UNIT_ASSERT_VALUES_EQUAL(json, R"({"X":"{\"a\":500,\"b\":[1,2,3]}","Y":73})");
}
}
@@ -672,9 +672,9 @@ Y_UNIT_TEST_SUITE(DeserializeNumbers) {
Y_UNIT_TEST_SUITE(SerializeStringTypes) {
Y_UNIT_TEST(Utf8) {
TTestContext ctx;
- auto value = ctx.Vb.NewString("aaaaabbbbbcccccc");
+ auto value = ctx.Vb.NewString("aaaaabbb \" ' ` bbcccccc");
auto json = WriteValueToFuncJsonStr(value, TDataType::Create(NUdf::TDataType<NUdf::TUtf8>::Id, ctx.TypeEnv));
- UNIT_ASSERT_VALUES_EQUAL(json, "\"aaaaabbbbbcccccc\"");
+ UNIT_ASSERT_VALUES_EQUAL(json, "\"aaaaabbb \\\" ' ` bbcccccc\"");
}
Y_UNIT_TEST(String) {