diff options
author | areredify <areredify@ydb.tech> | 2023-12-04 15:47:58 +0300 |
---|---|---|
committer | areredify <areredify@ydb.tech> | 2023-12-05 02:26:43 +0300 |
commit | e3a62fefd2e31f8525a2cdc97d5bc71b13342b2c (patch) | |
tree | d4fcff5390eff4fa94b2794b54573a2cbfd303ea | |
parent | a2a20e78420fe939146b632456fced62e560e6c5 (diff) | |
download | ydb-e3a62fefd2e31f8525a2cdc97d5bc71b13342b2c.tar.gz |
insert a newline after the comma if comma is on a newline
bless tests
insert newline if there was a newline before a comma
-rw-r--r-- | ydb/library/yql/sql/v1/format/sql_format.cpp | 5 | ||||
-rw-r--r-- | ydb/library/yql/sql/v1/format/sql_format_ut.cpp | 8 | ||||
-rw-r--r-- | ydb/library/yql/tests/sql/sql2yql/canondata/result.json | 12 |
3 files changed, 15 insertions, 10 deletions
diff --git a/ydb/library/yql/sql/v1/format/sql_format.cpp b/ydb/library/yql/sql/v1/format/sql_format.cpp index 365082317e..8fee98d22b 100644 --- a/ydb/library/yql/sql/v1/format/sql_format.cpp +++ b/ydb/library/yql/sql/v1/format/sql_format.cpp @@ -1337,8 +1337,11 @@ private: } if (str == "," && !MarkTokenStack.empty()) { + const bool addNewline = + (TokenIndex + 1 < ParsedTokens.size() && ParsedTokens[TokenIndex].Line != ParsedTokens[TokenIndex + 1].Line) + || (TokenIndex > 0 && ParsedTokens[TokenIndex - 1].Line != ParsedTokens[TokenIndex].Line); // add line for trailing comma - if (TokenIndex + 1 < ParsedTokens.size() && ParsedTokens[TokenIndex].Line != ParsedTokens[TokenIndex + 1].Line) { + if (addNewline) { NewLine(); } } diff --git a/ydb/library/yql/sql/v1/format/sql_format_ut.cpp b/ydb/library/yql/sql/v1/format/sql_format_ut.cpp index a2ecc86781..5e69192052 100644 --- a/ydb/library/yql/sql/v1/format/sql_format_ut.cpp +++ b/ydb/library/yql/sql/v1/format/sql_format_ut.cpp @@ -941,6 +941,8 @@ Y_UNIT_TEST_SUITE(CheckSqlFormatter) { "SELECT\n\t[\n\t\t1, 2,\n\t\t3, 4\n\t];\n"}, {"select [1,2,\n3,4,]", "SELECT\n\t[\n\t\t1, 2,\n\t\t3, 4,\n\t];\n"}, + {"select [1,2\n,3,\n4\n,5]", + "SELECT\n\t[\n\t\t1, 2,\n\t\t3,\n\t\t4,\n\t\t5\n\t];\n"}, }; TSetup setup; @@ -1254,7 +1256,7 @@ Y_UNIT_TEST_SUITE(CheckSqlFormatter) { {"select tagged<int32,\nfoo>", "SELECT\n\ttagged<\n\t\tint32,\n\t\tfoo\n\t>;\n"}, {"select tagged<int32\n,foo>", - "SELECT\n\ttagged<\n\t\tint32, foo\n\t>;\n"}, + "SELECT\n\ttagged<\n\t\tint32,\n\t\tfoo\n\t>;\n"}, {"select tagged<\nint32,foo>", "SELECT\n\ttagged<\n\t\tint32, foo\n\t>;\n"}, }; @@ -1270,7 +1272,7 @@ Y_UNIT_TEST_SUITE(CheckSqlFormatter) { {"select dict<int32,\nstring>", "SELECT\n\tdict<\n\t\tint32,\n\t\tstring\n\t>;\n"}, {"select dict<int32\n,string>", - "SELECT\n\tdict<\n\t\tint32, string\n\t>;\n"}, + "SELECT\n\tdict<\n\t\tint32,\n\t\tstring\n\t>;\n"}, {"select dict<\nint32,string>", "SELECT\n\tdict<\n\t\tint32, string\n\t>;\n"}, }; @@ -1290,7 +1292,7 @@ Y_UNIT_TEST_SUITE(CheckSqlFormatter) { {"select callable<\n(int32,\ndouble)->int32>", "SELECT\n\tcallable<\n\t\t(\n\t\t\tint32,\n\t\t\tdouble\n\t\t) -> int32\n\t>;\n"}, {"select callable<\n(int32\n,double)->int32>", - "SELECT\n\tcallable<\n\t\t(\n\t\t\tint32, double\n\t\t) -> int32\n\t>;\n"}, + "SELECT\n\tcallable<\n\t\t(\n\t\t\tint32,\n\t\t\tdouble\n\t\t) -> int32\n\t>;\n"}, }; TSetup setup; diff --git a/ydb/library/yql/tests/sql/sql2yql/canondata/result.json b/ydb/library/yql/tests/sql/sql2yql/canondata/result.json index 70bc89cf7d..c192e9b374 100644 --- a/ydb/library/yql/tests/sql/sql2yql/canondata/result.json +++ b/ydb/library/yql/tests/sql/sql2yql/canondata/result.json @@ -18355,9 +18355,9 @@ ], "test_sql_format.test[aggr_factory-container]": [ { - "checksum": "217e7869070c06b96caad579d757b70f", - "size": 1793, - "uri": "https://{canondata_backend}/1880306/64654158d6bfb1289c66c626a8162239289559d0/resource.tar.gz#test_sql_format.test_aggr_factory-container_/formatted.sql" + "checksum": "22bfa4d8986c5499bc4a0bc3f33c7e45", + "size": 1825, + "uri": "https://{canondata_backend}/937458/ee77031f79efe530ec1a9f6d0ade947cf33aa7ed/resource.tar.gz#test_sql_format.test_aggr_factory-container_/formatted.sql" } ], "test_sql_format.test[aggr_factory-container_empty]": [ @@ -23444,9 +23444,9 @@ ], "test_sql_format.test[hor_join-sorted_out_mix]": [ { - "checksum": "0baa246e24247977fc514b47188fd4e3", - "size": 830, - "uri": "https://{canondata_backend}/1880306/64654158d6bfb1289c66c626a8162239289559d0/resource.tar.gz#test_sql_format.test_hor_join-sorted_out_mix_/formatted.sql" + "checksum": "cc4283d7e0f6479882acf46c73629907", + "size": 866, + "uri": "https://{canondata_backend}/937458/ee77031f79efe530ec1a9f6d0ade947cf33aa7ed/resource.tar.gz#test_sql_format.test_hor_join-sorted_out_mix_/formatted.sql" } ], "test_sql_format.test[hor_join-table_record]": [ |