Task: Run the database-backed integration tests in CI #28
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Spec 002 adds database-backed integration tests (
npm run test:integration, files named*.integration.test.ts). They need a real PostgreSQL. The PR check runs on a runner without a database available to the pipeline, so these tests only run when someone runs them by hand.Why it matters
They are the only tests that catch a wrong lock order in the shopping list item writes (the "change row is written last" rule) and errors in the hand-written overview queries. Unit tests mock the repositories and cannot see either. A test that only runs by hand gets skipped, and a later change to the item writes can then break the rule unnoticed.
Options
pr_check.yaml. Needs Docker on the runner (the Raspberry Pi).Done when
pr_check.yamlrunsnpm run test:integrationand fails the check when it fails.CLAUDE.mdanddocs/architecture.mdno longer say the integration tests are outside CI.Context
Left open in the spec 002 backend plan (
docs/plans/002-shopping-list-overview-previews.md, judgment call 1). It is a decision about the runner setup, not about the feature.