Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Kotlin conformance test runner #809

Merged
merged 8 commits into from
Sep 28, 2022
Merged

Add Kotlin conformance test runner #809

merged 8 commits into from
Sep 28, 2022

Conversation

alancai98
Copy link
Member

Relevant Issues

Description

Moves the partiql-tests' conformance test runner to partiql-lang-kotlin. The conformance test runner was originally part of the test repo, but since we want the test repo to contain just test data, it made sense to move the runner to the partiql-lang-kotlin implementation. This test runner can eventually be used to replace partiql-lang-kotlin pts and testscript modules (along with some other tests in lang) after the remaining tests are ported over to partiql-tests.

Other Information

  • Updated Unreleased Section in CHANGELOG: [YES/NO]
    • No, PR's changes don't relate to partiql-lang-kotlin releases
  • Any backward-incompatible changes? [YES/NO]
    • No
  • Any new external dependencies? [YES/NO]
    • No

License Information

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@@ -0,0 +1,12 @@
# PartiQL Kotlin Test Runner
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This Gradle module is nearly the same as the one from partiql-tests with only the following changes:

  • Changing build.gradle.kts to build.gradle
  • Including partiql-tests-runner in the root project's settings.gradle file
  • Add git submodule pointing to partiql-tests
  • Changing paths to partiql-tests for reading the test data
  • Some renaming of the package directories

partiql-tests-runner/build.gradle Outdated Show resolved Hide resolved
settings.gradle Outdated
@@ -22,5 +22,6 @@ include('lang',
'pts',
'extensions',
'partiql-grammar',
'lib:partiql-isl'
'lib:partiql-isl',
'partiql-tests-runner'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest we create top-level test directory which holds the various testing modules.

└── test
    ├── partiql-pts
    ├── partiql-test-runner
    └── partiql-testscript

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The partiql-tests github submodule would be included in test/ rather than with the partiql-test-runner

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, added a test directory which holds the test modules. Also renamed the pts and testscript dirs to include the partiql prefix.

And moved partiql-tests github submodule to under tests

partiql-tests-runner/build.gradle Outdated Show resolved Hide resolved
partiql-tests-runner/build.gradle Outdated Show resolved Hide resolved
partiql-tests-runner/build.gradle Outdated Show resolved Hide resolved
partiql-tests-runner/.gitignore Outdated Show resolved Hide resolved
Copy link
Contributor

@RCHowell RCHowell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor README suggestions. Otherwise looks good. Nice work

build.gradle Show resolved Hide resolved
test/partiql-tests-runner/README.md Outdated Show resolved Hide resolved
test/partiql-tests-runner/README.md Outdated Show resolved Hide resolved
@alancai98 alancai98 merged commit f80e015 into main Sep 28, 2022
@alancai98 alancai98 deleted the add-kotlin-test-runner branch September 28, 2022 21:26
lziq added a commit that referenced this pull request Oct 21, 2022
commit 05c1785
Author: lziq <[email protected]>
Date:   Wed Oct 19 10:11:34 2022 -0700

    Applied comments in PR 822 (#836)

commit 8255a07
Author: John Ed Quinn <[email protected]>
Date:   Tue Oct 18 14:15:15 2022 -0700

    Set next dev version (#846)

commit bc4dc47
Author: R. C. Howell <[email protected]>
Date:   Tue Oct 18 13:13:53 2022 -0700

    Bumps partiql-isl-kotlin to 0.2.2 (#845)

commit 55de098
Author: Alan Cai <[email protected]>
Date:   Mon Oct 17 14:01:40 2022 -0700

    Update conformance test runner skip list with ported `pts` tests (#829)

commit d8bcf1f
Author: R. C. Howell <[email protected]>
Date:   Mon Oct 17 09:15:21 2022 -0700

    v0.8.0 (#844)

    Creates 0.8.0 commit

commit b4b7e1f
Author: R. C. Howell <[email protected]>
Date:   Fri Oct 14 16:52:49 2022 -0700

    Moves partiql-grammar to org.partiql.lang.syntax.antlr so we don't vend a separate jar (#843)

commit 28d960f
Author: yliuuuu <[email protected]>
Date:   Thu Oct 13 16:07:57 2022 -0700

    fix subquery execution (#842)

commit 0b8d14a
Author: Arash Maymandi <[email protected]>
Date:   Thu Oct 13 16:04:55 2022 -0700

    Final changes for REPLACE/UPSERT/INSERT EXCLUDED (#831)

    This commit includes the following:
    - Support for INSERT INTO tbl ... ON CONFLICT DO REPLACE EXCLUDED and REPLACE INTO tbl ... evaluation.
    - Support for INSERT INTO tbl ... ON CONFLICT DO UPDATE EXCLUDED logical planning.
       - The reason that evaluation is excluded is b/c the logic is for update evaluation requires implementing merge with existing values which makes it more completed; since it's not part of the related ask (attached issue) we defer the implementation for now
    - Adds parsing support for AS alias for UPSERT INTO and REPLACE INTO statements.

commit 13f622f
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 13 15:50:06 2022 -0700

    Cleans up SORT and UNPIVOT factories (#839)

commit 17acf86
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 13 15:47:41 2022 -0700

    Updates changelog (#840)

commit 376bc18
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 13 14:45:45 2022 -0700

    Adds support for aggregations and grouping to the planner (#821)

commit 8be7a2d
Author: Alan Cai <[email protected]>
Date:   Wed Oct 12 13:37:59 2022 -0700

    Update README.md following addition of partiql-tests git submodule (#838)

commit 2210658
Merge: 5715a88 9fdc92c
Author: Vladimir Gapeyev <[email protected]>
Date:   Wed Oct 12 10:40:25 2022 -0700

    Merge pull request #797 from partiql/graph-match-expr

    Switched from MATCH-as-FROM-source to MATCH-as-expression

commit 9fdc92c
Author: Vladimir Gapeyev <[email protected]>
Date:   Wed Oct 12 10:36:39 2022 -0700

    Cleanup

commit 0dfc9ec
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 11 14:09:36 2022 -0700

    Put back tests from the reverted commit,
    adjusting the success status as appropriate.

commit a7b42bf
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 11 10:58:32 2022 -0700

    Revert "Allow unparethesized MATCH in more places."

    This reverts commit af6f6c3.

    It's hard or impossible to match this grammar addition in the partiql-lang-rust edition of the grammar.

commit 5715a88
Author: Josh Pschorr <[email protected]>
Date:   Fri Oct 7 13:41:00 2022 -0700

    Default sort & null spec in evaluator, not parser (#834)

commit af6f6c3
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Oct 6 23:11:09 2022 -0700

    Allow unparethesized MATCH in more places.

commit 9b26e9c
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Oct 6 16:00:58 2022 -0700

    Grammar tweaks to not require (and prohibit) parentheses around a pattern with commas.
    Instead, require commas around the whole MATCH expression in this case.

commit 1ce2669
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 4 22:49:22 2022 -0700

    A couple more parsing tests, involving a bare edge pattern -[]->.

commit e552b92
Merge: 02b07cb a9e5a4e
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 4 17:36:45 2022 -0700

    Merge branch 'main' into graph-match-expr.

    Resolved a conflict in
    	lang/src/org/partiql/lang/eval/physical/PhysicalPlanCompilerImpl.kt

commit a9e5a4e
Author: lziq <[email protected]>
Date:   Tue Oct 4 15:32:00 2022 -0700

    Removed snapshot from version (#828)

commit a0209df
Author: R. C. Howell <[email protected]>
Date:   Mon Oct 3 13:57:55 2022 -0700

    Adds PIVOT to PartiQLPlanner (#817)

commit 9a159a0
Author: yliuuuu <[email protected]>
Date:   Mon Oct 3 10:45:01 2022 -0700

    Adds UNPIVOT operator to PartiQLPlanner (#815)

    * support `unpivot` operator in planner

commit 07f4a27
Author: John Ed Quinn <[email protected]>
Date:   Fri Sep 30 17:02:57 2022 -0400

    Adds SORT operator to planner (#793)

commit f80e015
Author: Alan Cai <[email protected]>
Date:   Wed Sep 28 14:26:35 2022 -0700

    Add Kotlin conformance test runner (#809)

commit 882d7d2
Author: R. C. Howell <[email protected]>
Date:   Tue Sep 27 17:11:55 2022 -0700

    Remove state from planner (#813)

commit a871ba5
Author: R. C. Howell <[email protected]>
Date:   Tue Sep 27 10:42:13 2022 -0700

    Moves partiql-isl-kotlin to a library of partiql-lang-kotlin (#805)

commit cd16bf3
Author: lziq <[email protected]>
Date:   Mon Sep 26 15:38:08 2022 -0700

    Removed type names from ExprValueType (#808)

commit 2e19331
Author: R. C. Howell <[email protected]>
Date:   Mon Sep 26 08:23:20 2022 -0700

    Renames PhysicalExprToThunkConverter as PhysicalPlanCompiler (#801)

commit 706acd9
Author: lziq <[email protected]>
Date:   Fri Sep 23 10:03:51 2022 -0700

    Marked TypedOpBehavior.LEGACY as deprecated (#796)

commit 02b07cb
Author: Vladimir Gapeyev <[email protected]>
Date:   Fri Sep 23 09:58:05 2022 -0700

    Lint fixes.

commit f29f894
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Sep 22 21:16:56 2022 -0700

    Switched from MATCH-as-FROM-source to MATCH-as-expression.

commit 4b3ec94
Author: Vladimir Gapeyev <[email protected]>
Date:   Sun Sep 18 15:34:08 2022 -0700

    Rename AST node graph_match_expr ~~> gpml_pattern, and matchExpr ~~> gpmlPattern in the grammar.

    The new name is a tad more appropriate for the node's contents
    and will be clashing less with the upcoming new expression form graph_match.

commit 58e908d
Author: Arash Maymandi <[email protected]>
Date:   Thu Sep 22 15:32:20 2022 -0700

    Add experimental REPLACE/UPSERT INTO (#788)

    * Add experimental REPLACE/UPSERT INTO

    Adding the parsing capability for `REPLACE INTO` and `REPLACE INTO`.
    See the PR and associated Issue for more details.

commit 8bfaf20
Author: Arash Maymandi <[email protected]>
Date:   Thu Sep 22 14:38:16 2022 -0700

    Add logical plan support for DO REPLACE EXCLUDED (#792)

commit 96de8e7
Author: John Ed Quinn <[email protected]>
Date:   Wed Sep 21 14:45:58 2022 -0700

    Adds projection alias support to ORDER BY clause (#740)

    * Adds projection alias support to ORDER BY clause

commit 001a99b
Author: Arash Maymandi <[email protected]>
Date:   Wed Sep 21 12:59:42 2022 -0700

    Add an additional example for ExprFunction (#786)

    * Add an additional example for ExprFunction

    Adds an example for using a custom function for working with elements
    of lists and struct members.

commit 58dd2cb
Author: lziq <[email protected]>
Date:   Tue Sep 20 15:23:10 2022 -0700

    Refactor stivt code (#791)

commit 74b6cf6
Author: John Ed Quinn <[email protected]>
Date:   Mon Sep 19 10:49:12 2022 -0700

    Splits large tests to allow parallelization and speedup in builds (#779)

commit 16ccbc1
Author: lziq <[email protected]>
Date:   Fri Sep 16 09:52:18 2022 -0700

    Refactor STIVT Code Style (#782)
lziq added a commit that referenced this pull request Oct 21, 2022
commit ebbe6dc
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 20 14:01:00 2022 -0700

    Update ISL to SNAPSHOT (#851)

commit a298d93
Author: Arash Maymandi <[email protected]>
Date:   Thu Oct 20 12:13:52 2022 -0700

    Add redaction for INSERT/UPSERT/REPLACE INTO << >> (#850)

    This commit enables statement redaction for INSERT, REPLACE, and UPSERT.

    See the following for more details:
    #849

commit fb4b29f
Merge: 05c1785 8f8d6d9
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Oct 20 10:31:39 2022 -0700

    Merge pull request #847 from partiql/issue-616

    Makes SqlException.errorContext non-nullable, resolving Issue #616.

commit 8f8d6d9
Author: Vladimir Gapeyev <[email protected]>
Date:   Wed Oct 19 11:32:54 2022 -0700

    Attempting to fix divergence in the git submodule test/partiql-tests.

commit 05c1785
Author: lziq <[email protected]>
Date:   Wed Oct 19 10:11:34 2022 -0700

    Applied comments in PR 822 (#836)

commit 89dacc2
Merge: 7ab757c 8255a07
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 18 17:17:22 2022 -0700

    Merge branch 'main' into issue-616

commit 8255a07
Author: John Ed Quinn <[email protected]>
Date:   Tue Oct 18 14:15:15 2022 -0700

    Set next dev version (#846)

commit 7ab757c
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 18 13:14:43 2022 -0700

    Makes SqlException.errorContext non-nullable, resolving Issue #616.

commit bc4dc47
Author: R. C. Howell <[email protected]>
Date:   Tue Oct 18 13:13:53 2022 -0700

    Bumps partiql-isl-kotlin to 0.2.2 (#845)

commit 55de098
Author: Alan Cai <[email protected]>
Date:   Mon Oct 17 14:01:40 2022 -0700

    Update conformance test runner skip list with ported `pts` tests (#829)

commit d8bcf1f
Author: R. C. Howell <[email protected]>
Date:   Mon Oct 17 09:15:21 2022 -0700

    v0.8.0 (#844)

    Creates 0.8.0 commit

commit b4b7e1f
Author: R. C. Howell <[email protected]>
Date:   Fri Oct 14 16:52:49 2022 -0700

    Moves partiql-grammar to org.partiql.lang.syntax.antlr so we don't vend a separate jar (#843)

commit 28d960f
Author: yliuuuu <[email protected]>
Date:   Thu Oct 13 16:07:57 2022 -0700

    fix subquery execution (#842)

commit 0b8d14a
Author: Arash Maymandi <[email protected]>
Date:   Thu Oct 13 16:04:55 2022 -0700

    Final changes for REPLACE/UPSERT/INSERT EXCLUDED (#831)

    This commit includes the following:
    - Support for INSERT INTO tbl ... ON CONFLICT DO REPLACE EXCLUDED and REPLACE INTO tbl ... evaluation.
    - Support for INSERT INTO tbl ... ON CONFLICT DO UPDATE EXCLUDED logical planning.
       - The reason that evaluation is excluded is b/c the logic is for update evaluation requires implementing merge with existing values which makes it more completed; since it's not part of the related ask (attached issue) we defer the implementation for now
    - Adds parsing support for AS alias for UPSERT INTO and REPLACE INTO statements.

commit 13f622f
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 13 15:50:06 2022 -0700

    Cleans up SORT and UNPIVOT factories (#839)

commit 17acf86
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 13 15:47:41 2022 -0700

    Updates changelog (#840)

commit 376bc18
Author: John Ed Quinn <[email protected]>
Date:   Thu Oct 13 14:45:45 2022 -0700

    Adds support for aggregations and grouping to the planner (#821)

commit 8be7a2d
Author: Alan Cai <[email protected]>
Date:   Wed Oct 12 13:37:59 2022 -0700

    Update README.md following addition of partiql-tests git submodule (#838)

commit 2210658
Merge: 5715a88 9fdc92c
Author: Vladimir Gapeyev <[email protected]>
Date:   Wed Oct 12 10:40:25 2022 -0700

    Merge pull request #797 from partiql/graph-match-expr

    Switched from MATCH-as-FROM-source to MATCH-as-expression

commit 9fdc92c
Author: Vladimir Gapeyev <[email protected]>
Date:   Wed Oct 12 10:36:39 2022 -0700

    Cleanup

commit 0dfc9ec
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 11 14:09:36 2022 -0700

    Put back tests from the reverted commit,
    adjusting the success status as appropriate.

commit a7b42bf
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 11 10:58:32 2022 -0700

    Revert "Allow unparethesized MATCH in more places."

    This reverts commit af6f6c3.

    It's hard or impossible to match this grammar addition in the partiql-lang-rust edition of the grammar.

commit 5715a88
Author: Josh Pschorr <[email protected]>
Date:   Fri Oct 7 13:41:00 2022 -0700

    Default sort & null spec in evaluator, not parser (#834)

commit af6f6c3
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Oct 6 23:11:09 2022 -0700

    Allow unparethesized MATCH in more places.

commit 9b26e9c
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Oct 6 16:00:58 2022 -0700

    Grammar tweaks to not require (and prohibit) parentheses around a pattern with commas.
    Instead, require commas around the whole MATCH expression in this case.

commit 1ce2669
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 4 22:49:22 2022 -0700

    A couple more parsing tests, involving a bare edge pattern -[]->.

commit e552b92
Merge: 02b07cb a9e5a4e
Author: Vladimir Gapeyev <[email protected]>
Date:   Tue Oct 4 17:36:45 2022 -0700

    Merge branch 'main' into graph-match-expr.

    Resolved a conflict in
    	lang/src/org/partiql/lang/eval/physical/PhysicalPlanCompilerImpl.kt

commit a9e5a4e
Author: lziq <[email protected]>
Date:   Tue Oct 4 15:32:00 2022 -0700

    Removed snapshot from version (#828)

commit a0209df
Author: R. C. Howell <[email protected]>
Date:   Mon Oct 3 13:57:55 2022 -0700

    Adds PIVOT to PartiQLPlanner (#817)

commit 9a159a0
Author: yliuuuu <[email protected]>
Date:   Mon Oct 3 10:45:01 2022 -0700

    Adds UNPIVOT operator to PartiQLPlanner (#815)

    * support `unpivot` operator in planner

commit 07f4a27
Author: John Ed Quinn <[email protected]>
Date:   Fri Sep 30 17:02:57 2022 -0400

    Adds SORT operator to planner (#793)

commit f80e015
Author: Alan Cai <[email protected]>
Date:   Wed Sep 28 14:26:35 2022 -0700

    Add Kotlin conformance test runner (#809)

commit 882d7d2
Author: R. C. Howell <[email protected]>
Date:   Tue Sep 27 17:11:55 2022 -0700

    Remove state from planner (#813)

commit a871ba5
Author: R. C. Howell <[email protected]>
Date:   Tue Sep 27 10:42:13 2022 -0700

    Moves partiql-isl-kotlin to a library of partiql-lang-kotlin (#805)

commit cd16bf3
Author: lziq <[email protected]>
Date:   Mon Sep 26 15:38:08 2022 -0700

    Removed type names from ExprValueType (#808)

commit 2e19331
Author: R. C. Howell <[email protected]>
Date:   Mon Sep 26 08:23:20 2022 -0700

    Renames PhysicalExprToThunkConverter as PhysicalPlanCompiler (#801)

commit 706acd9
Author: lziq <[email protected]>
Date:   Fri Sep 23 10:03:51 2022 -0700

    Marked TypedOpBehavior.LEGACY as deprecated (#796)

commit 02b07cb
Author: Vladimir Gapeyev <[email protected]>
Date:   Fri Sep 23 09:58:05 2022 -0700

    Lint fixes.

commit f29f894
Author: Vladimir Gapeyev <[email protected]>
Date:   Thu Sep 22 21:16:56 2022 -0700

    Switched from MATCH-as-FROM-source to MATCH-as-expression.

commit 4b3ec94
Author: Vladimir Gapeyev <[email protected]>
Date:   Sun Sep 18 15:34:08 2022 -0700

    Rename AST node graph_match_expr ~~> gpml_pattern, and matchExpr ~~> gpmlPattern in the grammar.

    The new name is a tad more appropriate for the node's contents
    and will be clashing less with the upcoming new expression form graph_match.

commit 58e908d
Author: Arash Maymandi <[email protected]>
Date:   Thu Sep 22 15:32:20 2022 -0700

    Add experimental REPLACE/UPSERT INTO (#788)

    * Add experimental REPLACE/UPSERT INTO

    Adding the parsing capability for `REPLACE INTO` and `REPLACE INTO`.
    See the PR and associated Issue for more details.

commit 8bfaf20
Author: Arash Maymandi <[email protected]>
Date:   Thu Sep 22 14:38:16 2022 -0700

    Add logical plan support for DO REPLACE EXCLUDED (#792)

commit 96de8e7
Author: John Ed Quinn <[email protected]>
Date:   Wed Sep 21 14:45:58 2022 -0700

    Adds projection alias support to ORDER BY clause (#740)

    * Adds projection alias support to ORDER BY clause

commit 001a99b
Author: Arash Maymandi <[email protected]>
Date:   Wed Sep 21 12:59:42 2022 -0700

    Add an additional example for ExprFunction (#786)

    * Add an additional example for ExprFunction

    Adds an example for using a custom function for working with elements
    of lists and struct members.

commit 58dd2cb
Author: lziq <[email protected]>
Date:   Tue Sep 20 15:23:10 2022 -0700

    Refactor stivt code (#791)

commit 74b6cf6
Author: John Ed Quinn <[email protected]>
Date:   Mon Sep 19 10:49:12 2022 -0700

    Splits large tests to allow parallelization and speedup in builds (#779)

commit 16ccbc1
Author: lziq <[email protected]>
Date:   Fri Sep 16 09:52:18 2022 -0700

    Refactor STIVT Code Style (#782)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants