diff options
author | vvvv <[email protected]> | 2025-10-08 11:41:14 +0300 |
---|---|---|
committer | vvvv <[email protected]> | 2025-10-08 12:20:42 +0300 |
commit | d73f13cfdb331365ddad0da51ec36e0a3e4cf187 (patch) | |
tree | 88cab10170ce9aa3389be7f1a09247386dcf5ebd /yql/essentials/public/fastcheck/fastcheck_ut.cpp | |
parent | f377d8ad9e0741cd904c1d4934afdf24af517d93 (diff) |
YQL-20086 public
commit_hash:68b0c2e9c2960587af7d57ecedcb38f4d05890b7
Diffstat (limited to 'yql/essentials/public/fastcheck/fastcheck_ut.cpp')
-rw-r--r-- | yql/essentials/public/fastcheck/fastcheck_ut.cpp | 286 |
1 files changed, 143 insertions, 143 deletions
diff --git a/yql/essentials/public/fastcheck/fastcheck_ut.cpp b/yql/essentials/public/fastcheck/fastcheck_ut.cpp index 8aa403e6f57..4e7c894ae77 100644 --- a/yql/essentials/public/fastcheck/fastcheck_ut.cpp +++ b/yql/essentials/public/fastcheck/fastcheck_ut.cpp @@ -5,143 +5,143 @@ using namespace NYql; using namespace NYql::NFastCheck; Y_UNIT_TEST_SUITE(TFastCheckTests) { - Y_UNIT_TEST(ParsePureYqlGood) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = false; - options.ParseOnly = true; - TIssues errors; - UNIT_ASSERT(CheckProgram("(return world)", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(ParsePureYqlBad) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = false; - options.ParseOnly = true; - TIssues errors; - UNIT_ASSERT(CheckProgram("(return world1)", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(ParsePureSqlGood) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = true; - TIssues errors; - UNIT_ASSERT(CheckProgram("select 1", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(ParsePureSqlBad) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = true; - TIssues errors; - UNIT_ASSERT(!CheckProgram("select1", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); - } - - Y_UNIT_TEST(CompilePureYqlBad) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = false; - options.ParseOnly = false; - TIssues errors; - UNIT_ASSERT(!CheckProgram("(return world1)", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); - } - - Y_UNIT_TEST(CompileTableSqlGood) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = false; - options.ClusterMapping["plato"] = YtProviderName; - TIssues errors; - UNIT_ASSERT(CheckProgram("select key,count(*) from plato.Input group by key", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(CompileTableSqlBad) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = false; - TIssues errors; - UNIT_ASSERT(!CheckProgram("select key,count(*) from plato.Input", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); - } - - Y_UNIT_TEST(CompileLibrary) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.IsLibrary = true; - TIssues errors; - UNIT_ASSERT(CheckProgram("$x = 1; export $x", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(CompileSqlWithLibsGood) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = false; - options.SqlLibs["foo.sql"] = "$x = 1; export $x;"; - TIssues errors; - UNIT_ASSERT(CheckProgram("pragma library('foo.sql');import foo symbols $x; select $x", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(ParseSqlWithBadLib) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = true; - options.SqlLibs["foo.sql"] = "$x = 1; zexport $x;"; - TIssues errors; - UNIT_ASSERT(!CheckProgram("pragma library('foo.sql');import foo symbols $x; select $x", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); - } - - Y_UNIT_TEST(CompileSqlWithUnresolvedLib) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = false; - options.SqlLibs["foo.sql"] = "$x = 1; export $x;"; - TIssues errors; - UNIT_ASSERT(!CheckProgram("pragma library('foo.sql');import foo symbols $y; select $y", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); - } - - Y_UNIT_TEST(ParseSqlWithUnresolvedLib) { - TOptions options; - options.LangVer = GetMaxReleasedLangVersion(); - options.IsSql = true; - options.ParseOnly = true; - options.SqlLibs["foo.sql"] = "$x = 1; export $x;"; - TIssues errors; - UNIT_ASSERT(CheckProgram("pragma library('foo.sql');import foo symbols $y; select $y", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); - } - - Y_UNIT_TEST(TooHighLangVer) { - TOptions options; - options.LangVer = GetMaxLangVersion(); - options.IsSql = false; - options.ParseOnly = true; - TIssues errors; - UNIT_ASSERT(!CheckProgram("(return world)", options, errors)); - UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); - } - - Y_UNIT_TEST(UsedFlags) { - TString program = R"sql( +Y_UNIT_TEST(ParsePureYqlGood) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = false; + options.ParseOnly = true; + TIssues errors; + UNIT_ASSERT(CheckProgram("(return world)", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(ParsePureYqlBad) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = false; + options.ParseOnly = true; + TIssues errors; + UNIT_ASSERT(CheckProgram("(return world1)", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(ParsePureSqlGood) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = true; + TIssues errors; + UNIT_ASSERT(CheckProgram("select 1", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(ParsePureSqlBad) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = true; + TIssues errors; + UNIT_ASSERT(!CheckProgram("select1", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); +} + +Y_UNIT_TEST(CompilePureYqlBad) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = false; + options.ParseOnly = false; + TIssues errors; + UNIT_ASSERT(!CheckProgram("(return world1)", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); +} + +Y_UNIT_TEST(CompileTableSqlGood) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = false; + options.ClusterMapping["plato"] = YtProviderName; + TIssues errors; + UNIT_ASSERT(CheckProgram("select key,count(*) from plato.Input group by key", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(CompileTableSqlBad) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = false; + TIssues errors; + UNIT_ASSERT(!CheckProgram("select key,count(*) from plato.Input", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); +} + +Y_UNIT_TEST(CompileLibrary) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.IsLibrary = true; + TIssues errors; + UNIT_ASSERT(CheckProgram("$x = 1; export $x", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(CompileSqlWithLibsGood) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = false; + options.SqlLibs["foo.sql"] = "$x = 1; export $x;"; + TIssues errors; + UNIT_ASSERT(CheckProgram("pragma library('foo.sql');import foo symbols $x; select $x", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(ParseSqlWithBadLib) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = true; + options.SqlLibs["foo.sql"] = "$x = 1; zexport $x;"; + TIssues errors; + UNIT_ASSERT(!CheckProgram("pragma library('foo.sql');import foo symbols $x; select $x", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); +} + +Y_UNIT_TEST(CompileSqlWithUnresolvedLib) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = false; + options.SqlLibs["foo.sql"] = "$x = 1; export $x;"; + TIssues errors; + UNIT_ASSERT(!CheckProgram("pragma library('foo.sql');import foo symbols $y; select $y", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); +} + +Y_UNIT_TEST(ParseSqlWithUnresolvedLib) { + TOptions options; + options.LangVer = GetMaxReleasedLangVersion(); + options.IsSql = true; + options.ParseOnly = true; + options.SqlLibs["foo.sql"] = "$x = 1; export $x;"; + TIssues errors; + UNIT_ASSERT(CheckProgram("pragma library('foo.sql');import foo symbols $y; select $y", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(0, errors.Size()); +} + +Y_UNIT_TEST(TooHighLangVer) { + TOptions options; + options.LangVer = GetMaxLangVersion(); + options.IsSql = false; + options.ParseOnly = true; + TIssues errors; + UNIT_ASSERT(!CheckProgram("(return world)", options, errors)); + UNIT_ASSERT_VALUES_EQUAL(1, errors.Size()); +} + +Y_UNIT_TEST(UsedFlags) { + TString program = R"sql( $input = AsList( AsStruct(1 AS key, 1001 AS subkey, 'AAA' AS value), ); @@ -155,11 +155,11 @@ Y_UNIT_TEST_SUITE(TFastCheckTests) { AS_TABLE($input) AS i1 )sql"; - TOptions options; - options.IsSql = true; - - TIssues errors; - UNIT_ASSERT_C(CheckProgram(program, options, errors), errors.ToOneLineString()); - } + TOptions options; + options.IsSql = true; + TIssues errors; + UNIT_ASSERT_C(CheckProgram(program, options, errors), errors.ToOneLineString()); } + +} // Y_UNIT_TEST_SUITE(TFastCheckTests) |