Integration test first pass.#12
Open
tachyonics wants to merge 7 commits into
Open
Conversation
0b6a7b2 to
67211b0
Compare
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
1b41bf1 to
8a8f886
Compare
added 6 commits
May 13, 2026 08:29
The existing integration tests issued raw HTTPClient requests and parsed responses into a hand-rolled `WireTask` struct, so any drift between `openapi.yaml` and the test surface went unnoticed until runtime — and assertions only ever observed effects through the same service code under test. The two integration suites now drive the service via the OpenAPI- generated `Client` (server + client share types from `TaskAPI`, schema drift fails at compile time) and read state directly from DynamoDB via `DynamoDBTables` + `DynamoDBTablesSoto`, bypassing `DynamoDBTaskRepository` entirely. LocalStack suite grows from one round-trip into seven targeted tests covering each endpoint × each interesting outcome, with seed-and- read DDB assertions: - createTask persists pending row with requested attributes - getTask returns a directly-seeded row - updateTaskPriority mutates row + advances updatedAt - updateTaskPriority 400 leaves the row unchanged - updateTaskPriority 404 when missing - cancelTask sets status=cancelled + advances updatedAt - cancelTask 409 leaves a completed row unchanged Pure routing-level concerns (404 on getTask, 404 on cancelTask, invalid-UUID paths) are not duplicated here — they're covered by the in-process `TaskControllerTests` against a mock repository. The in-memory smoke suite keeps a single end-to-end test, also via the OpenAPI client, so the wiring stays validated without paying the LocalStack startup cost on every change.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Integration test first pass.