Files
Oleksandr Bezdieniezhnykh 7822841587 [AZ-289] [AZ-290] Batch 3 tests: integration ZIP cap, perf, security, queue
AZ-289 — RL-01 50MB ZIP cap added to RunRouteWithTilesZipTest;
existing integration tests already cover BT-08/BT-09 + AC-1/AC-2.

AZ-290:
- scripts/run-performance-tests.sh extended with PT-01/03/04/05
- SatelliteProvider.IntegrationTests/SecurityTests.cs (SEC-01..SEC-04),
  wired into Program.cs
- SatelliteProvider.Tests/RegionRequestQueueTests.cs covering RS-04 /
  RL-02 queue capacity behavior

Notes:
- RS-04 spec wording ("rejects overflow") drifts from the channel's
  BoundedChannelFullMode.Wait back-pressure semantics. Tests assert
  the actual behavior; spec to be reconciled in Step 12 (Test-Spec
  Sync). Tracked as Low/Spec-Gap in batch_03_review.md.
- Unit tests: 35/35 passed (Docker .NET 8 SDK).
- Integration test project builds clean (0 warnings, 0 errors).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-10 05:10:30 +03:00

1.5 KiB

Non-Functional Tests

Task: AZ-290_nonfunctional_tests Name: Non-functional tests: perf, resilience, security, limits Complexity: 3 points Dependencies: AZ-285 Component: Blackbox Tests Tracker: AZ-290 Epic: AZ-284

Performance Scenarios (PT-01 through PT-06)

  • PT-01: Tile download latency <30s
  • PT-02: Cached tile retrieval <500ms
  • PT-03/04: Region processing throughput
  • PT-05: 5 concurrent regions all complete
  • PT-06: Route interpolation <5s

Resilience Scenarios (RS-01 through RS-06)

  • RS-01: API starts with database ready
  • RS-02: Migrations run on fresh DB
  • RS-03: Region processing handles tile failures
  • RS-04: Queue rejects overflow (capacity 1000)
  • RS-05: Max 4 concurrent downloads
  • RS-06: Route processing completes all regions

Security Scenarios (SEC-01 through SEC-04)

  • SEC-01: SQL injection via coordinates
  • SEC-02: Path traversal in tile serving
  • SEC-03: Oversized region request
  • SEC-04: Malformed JSON

Resource Limit Scenarios (RL-01 through RL-04)

  • RL-01: ZIP ≤ 50MB
  • RL-02: Queue capacity 1000
  • RL-03: Concurrent download semaphore (4)
  • RL-04: Concurrent region processing (20)

System Under Test Boundary

All tests drive the system via HTTP API or observe Docker container behavior.

Acceptance Criteria

AC-1: Performance scripts (scripts/run-performance-tests.sh) pass thresholds AC-2: Resilience tests verify state transitions and resource limits AC-3: Security tests confirm no injection or traversal vulnerabilities