Files
post3/todos/POST3-007-integration-tests.md
2026-02-27 11:38:10 +01:00

983 B

POST3-007: Integration tests with aws-sdk-s3

Status: Done Priority: P1 Blocked by: POST3-006

Description

End-to-end integration tests using the official AWS S3 Rust SDK to validate the full stack.

Acceptance Criteria

  • tests/common/mod.rs — TestServer helper:
    • Starts server on ephemeral port (port 0)
    • Configures aws-sdk-s3 with force_path_style, dummy creds, custom endpoint
    • Cleans database between tests
  • Test: create + list buckets
  • Test: head bucket (exists + not exists)
  • Test: delete bucket
  • Test: put + get small object (body roundtrip)
  • Test: put large object (5 MiB, verify chunked storage + reassembly)
  • Test: head object (size, etag, content-type)
  • Test: delete object (verify 404 after)
  • Test: list objects v2 with prefix filter
  • Test: overwrite object (verify latest version)
  • Test: user metadata roundtrip (x-amz-meta-* headers)
  • All tests pass with cargo nextest run