+++ title = "Test suite: GET /api/ — OpenAPI spec returned as valid JSON with expected structure" priority = 5 status = "todo" ticket_type = "task" dependencies = ["ce1e4f", "9b581f", "28e7d9"] +++ Integration tests live in `tests/` and exercise the API binary against a temporary SQLite database. They run with `cargo test` and must not require a running Cloudflare environment. The test harness spawns the API server on a random port and returns the base URL. Write the `GET /api/` test suite in `tests/test_openapi.rs` (or similar). Assert that the endpoint: 1. Returns HTTP 200 2. Returns `Content-Type: application/json` 3. Returns a body that is valid JSON 4. The JSON object contains an `openapi` key with value `"3.1.0"` (or `"3.0.x"`) 5. The JSON object contains `paths` and `info` keys - Use the shared test harness from ticket 9b581f. - No authentication required for this endpoint. Use `superpowers:verification-before-completion` before closing. Run in order from the `quotesdb/` directory: ```sh cargo fmt cargo check cargo clippy cargo test ``` `test(quotesdb): add GET /api/ test suite — OpenAPI spec endpoint`