You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 42907fd
Browse filesBrowse the repository at this point in the historyBrowse files
Move ClickHouse testgen into internal/testcheck and verify end-to-end cases
testcheck replaces testgen. It generates nothing: each engine package
finds the analyze cases under internal/endtoend/testdata, loads a case's
schema, fixture and queries into a real database, and compares what the
database reports with the output.json the case committed, byte for byte.
The ClickHouse package is the testgen code moved over; other engines get
their own package alongside it.
sqlc analyze now prints each column's type as a call expression instead
of data_type, not_null and is_array, so its output and the database's
answer share one format. The compiler's flat column description maps
onto it as the data type wrapped in one array node per dimension with
the column's nullability on the outermost node. Every analyze case's
expected output is renamed from stdout.txt to output.json, which the
end-to-end harness now reads first, and regenerated.
The cases from testgen's testdata become analyze_types,
analyze_expressions, analyze_subqueries and analyze_exec under the
ClickHouse dialect, with fixture.sql next to the schema, and the existing
analyze_basic and analyze_params ClickHouse cases gain fixtures. Two
queries from the subqueries case, a CTE and a SELECT * over a join, are
left out because sqlc cannot analyze them yet.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y6XkyWnx7iJFEb8q3AnYps
0 commit comments