summaryrefslogtreecommitdiffstats
path: root/yql/essentials/sql/v1/sql_ut.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'yql/essentials/sql/v1/sql_ut.cpp')
-rw-r--r--yql/essentials/sql/v1/sql_ut.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/yql/essentials/sql/v1/sql_ut.cpp b/yql/essentials/sql/v1/sql_ut.cpp
index bd385c8feb5..d850dac37b5 100644
--- a/yql/essentials/sql/v1/sql_ut.cpp
+++ b/yql/essentials/sql/v1/sql_ut.cpp
@@ -969,6 +969,23 @@ Y_UNIT_TEST_SUITE(SqlParsingOnly) {
UNIT_ASSERT_VALUES_EQUAL(1, elementStat["primarykey"]);
}
+ Y_UNIT_TEST(AlterDatabaseAst) {
+ NYql::TAstParseResult request = SqlToYql("USE plato; ALTER DATABASE `/Root/test` OWNER TO user1;");
+ UNIT_ASSERT(request.IsOk());
+
+ TVerifyLineFunc verifyLine = [](const TString& word, const TString& line) {
+ Y_UNUSED(word);
+
+ UNIT_ASSERT_VALUES_UNEQUAL(TString::npos, line.find(
+ R"(let world (Write! world sink '('('mode 'alterDatabase) '('dbPath '/Root/test) '('owner ''"user1"))))"
+ ));
+ };
+
+ TWordCountHive elementStat({TString("\'mode \'alterDatabase")});
+ VerifyProgram(request, elementStat, verifyLine);
+ UNIT_ASSERT_VALUES_EQUAL(1, elementStat["\'mode \'alterDatabase"]);
+ }
+
Y_UNIT_TEST(CreateTableNonNullableYqlTypeAstCorrect) {
NYql::TAstParseResult res = SqlToYql("USE plato; CREATE TABLE t (a int32 not null);");
UNIT_ASSERT(res.Root);