Skip to content

test(e2e): drive the cli against real databases via docker compose - #8

Merged
upsetbit merged 2 commits into
masterfrom
test/cli-e2e
Jun 30, 2026
Merged

test(e2e): drive the cli against real databases via docker compose#8
upsetbit merged 2 commits into
masterfrom
test/cli-e2e

Conversation

@upsetbit

Copy link
Copy Markdown
Contributor

Adds a true end-to-end test of the compiled q binary (the existing
integration job exercises the adapter Go API, not the CLI).

scripts/e2e.sh (run by just test-e2e and a new CI e2e job) builds q, then
starts Postgres, MySQL, MongoDB, and Redis via docker compose (seeded from
testdata/e2e/), plus SQLite from a temp file. For each engine it pipes a
connection string on stdin and asserts:

  • a read query streams the expected output, and
  • a mutation is refused with exit 5.

Compose up --wait gates on healthchecks; a cleanup trap always tears the stack
down. Verified locally — all five engines pass.

Also: replace the README license section with the org's standard CC0 block.

🤖 Generated with Claude Code

upsetbit and others added 2 commits June 30, 2026 15:50
Replace the license section with the org's standard CC0 waiver wording,
attribution, badge, and kopimi link.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add an end-to-end suite (scripts/e2e.sh, just test-e2e, and a CI e2e job) that
builds the q binary and runs it against Postgres, MySQL, MongoDB, and Redis
started via docker compose (seeded from testdata/e2e), plus SQLite from a temp
file. Each engine asserts a read query streams the expected output and a
mutation is refused with exit 5 — exercising the real CLI, not just the
adapter API.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@upsetbit
upsetbit merged commit 59faf15 into master Jun 30, 2026
8 checks passed
@upsetbit
upsetbit deleted the test/cli-e2e branch June 30, 2026 18:57
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.

1 participant