mirror of
https://github.com/azaion/detections.git
synced 2026-04-22 11:16:31 +00:00
Refactor testing framework to replace integration tests with blackbox tests across various skills and documentation. Update related workflows, templates, and task specifications to align with the new blackbox testing approach. Remove obsolete integration test files and enhance clarity in task management and reporting structures.
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
# Security Tests
|
||||
|
||||
### NFT-SEC-01: Malformed multipart payload handling
|
||||
|
||||
**Summary**: Verify that the service handles malformed multipart requests without crashing.
|
||||
**Traces to**: AC-API-2 (security)
|
||||
|
||||
**Steps**:
|
||||
|
||||
| Step | Consumer Action | Expected Response |
|
||||
|------|----------------|------------------|
|
||||
| 1 | Send `POST /detect` with truncated multipart body (missing boundary) | 400 or 422 — not 500 |
|
||||
| 2 | Send `POST /detect` with Content-Type: multipart but no file part | 400 — empty image |
|
||||
| 3 | `GET /health` after malformed requests | Service is still healthy |
|
||||
|
||||
**Pass criteria**: All malformed requests return 4xx. Service remains operational.
|
||||
|
||||
---
|
||||
|
||||
### NFT-SEC-02: Oversized request body
|
||||
|
||||
**Summary**: Verify system behavior when an extremely large file is uploaded.
|
||||
**Traces to**: RESTRICT-OP-4
|
||||
|
||||
**Steps**:
|
||||
|
||||
| Step | Consumer Action | Expected Response |
|
||||
|------|----------------|------------------|
|
||||
| 1 | Send `POST /detect` with a 500 MB random file | Error response (413, 400, or timeout) — not OOM crash |
|
||||
| 2 | `GET /health` | Service is still running |
|
||||
|
||||
**Pass criteria**: Service does not crash or run out of memory. Returns an error or times out gracefully.
|
||||
|
||||
---
|
||||
|
||||
### NFT-SEC-03: JWT token is forwarded without modification
|
||||
|
||||
**Summary**: Verify that the Authorization header is forwarded to the Annotations service as-is.
|
||||
**Traces to**: AC-API-3
|
||||
|
||||
**Steps**:
|
||||
|
||||
| Step | Consumer Action | Expected Response |
|
||||
|------|----------------|------------------|
|
||||
| 1 | `POST /detect/test-media-sec` with `Authorization: Bearer test-jwt-123` and `x-refresh-token: refresh-456` | `{"status": "started"}` |
|
||||
| 2 | After processing, query mock-annotations `GET /mock/annotations` | Recorded request contains `Authorization: Bearer test-jwt-123` header |
|
||||
|
||||
**Pass criteria**: Exact token received by mock-annotations matches what the consumer sent.
|
||||
Reference in New Issue
Block a user