mirror of
https://github.com/azaion/admin.git
synced 2026-04-22 08:36:32 +00:00
[AZ-189] [AZ-190] [AZ-191] [AZ-192] [AZ-193] [AZ-194] [AZ-195] Add e2e blackbox test suite
Made-with: Cursor
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
# Azaion Admin API — black-box E2E tests
|
||||
|
||||
## Run (Docker)
|
||||
|
||||
From the repository root:
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.test.yml up --build --abort-on-container-exit --exit-code-from e2e-consumer
|
||||
```
|
||||
|
||||
Reports are written to `e2e/test-results/` on the host (`results.trx`, `results.xunit.xml`).
|
||||
|
||||
## Database bootstrap
|
||||
|
||||
The stock Postgres entrypoint runs every file in `/docker-entrypoint-initdb.d/` against `POSTGRES_DB` only. The scripts under `env/db/` expect different databases (`postgres` vs `azaion`), so `e2e/db-init/00_run_all.sh` runs `01_permissions.sql` on `postgres`, then `02_structure.sql`, `03_add_timestamp_columns.sql`, and `99_test_seed.sql` on `azaion`. The compose file uses `POSTGRES_USER=postgres` so `01_permissions.sql` can create roles and the `azaion` database as written.
|
||||
|
||||
`99_test_seed.sql` sets `azaion_admin` / `azaion_reader` passwords to `test_password` (matching the API connection strings) and updates seed user password hashes for `Admin1234` and `Upload1234`.
|
||||
|
||||
## Local `dotnet test` (without Docker)
|
||||
|
||||
`appsettings.test.json` targets `http://system-under-test:8080`. Running tests on the host will fail fixture setup unless you override `ApiBaseUrl` (for example via environment variables) and run the API plus Postgres yourself.
|
||||
Reference in New Issue
Block a user