Skip to content

Conversation

@DAlperin
Copy link
Member

@DAlperin DAlperin commented Dec 10, 2025

Adds several new tesdrive actions and uses them to write some roundtrip tests.

$ duckdb-execute name=...

Executes SQL statements against a named DuckDB connection. Each line in the command body is executed as a separate statement. The output is not validated, but an error will cause the test to fail.

$ duckdb-execute name=duckdb
CREATE TABLE test_table (id INTEGER, name VARCHAR);
INSERT INTO test_table VALUES (1, 'Alice'), (2, 'Bob');

$ duckdb-query name=... [sort-rows=true]

Executes a query against a named DuckDB connection and verifies the output. The first line of the command body is the SQL query. The remaining lines are the expected output, with columns separated by spaces.

$ duckdb-query name=duckdb
SELECT * FROM test_table
1 Alice
2 Bob

If sort-rows=true is specified, both the expected and actual rows are sorted before comparison. This is useful for queries that may return rows in a non-deterministic order:

$ duckdb-query name=duckdb sort-rows=true
SELECT * FROM test_table ORDER BY id
1 Alice
2 Bob

NULL values are displayed as <null>:

$ duckdb-query name=duckdb
SELECT NULL
<null>

Tips for reviewer

Checklist

  • This PR has adequate test coverage / QA involvement has been duly considered. (trigger-ci for additional test/nightly runs)
  • This PR has an associated up-to-date design doc, is a design doc (template), or is sufficiently small to not require a design.
  • If this PR evolves an existing $T ⇔ Proto$T mapping (possibly in a backwards-incompatible way), then it is tagged with a T-proto label.
  • If this PR will require changes to cloud orchestration or tests, there is a companion cloud PR to account for those changes that is tagged with the release-blocker label (example).
  • If this PR includes major user-facing behavior changes, I have pinged the relevant PM to schedule a changelog post.

@DAlperin DAlperin marked this pull request as ready for review December 11, 2025 22:21
@DAlperin DAlperin requested review from a team as code owners December 11, 2025 22:21
@DAlperin DAlperin requested a review from ggevay December 11, 2025 22:21
@DAlperin DAlperin force-pushed the dov/iceberg-e2e-tests branch from 78393b9 to 06c734d Compare December 11, 2025 22:22
@DAlperin DAlperin marked this pull request as draft December 11, 2025 22:23
Copy link
Contributor

@def- def- left a comment

Choose a reason for hiding this comment

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

Please document the new $ duckdb-execute/query commands in doc/developer/testdrive.md

@DAlperin DAlperin force-pushed the dov/iceberg-e2e-tests branch 6 times, most recently from 8e12c8f to 333ca5b Compare December 17, 2025 03:50
@DAlperin DAlperin marked this pull request as ready for review December 17, 2025 15:26
@DAlperin DAlperin force-pushed the dov/iceberg-e2e-tests branch from 912dc24 to 115d287 Compare December 17, 2025 15:53
@DAlperin DAlperin changed the title Dov/iceberg e2e tests iceberg e2e tests Dec 17, 2025
@DAlperin DAlperin force-pushed the dov/iceberg-e2e-tests branch from 115d287 to 29d21fd Compare December 18, 2025 20:38
@DAlperin DAlperin enabled auto-merge (squash) December 18, 2025 20:38
@DAlperin DAlperin merged commit fa066df into MaterializeInc:main Dec 18, 2025
131 checks passed
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