SCRAPE-21: Add requireAuth + requireAdmin middleware verification #25

Merged
stephen merged 1 commits from scraper/auth-middleware into dev 2026-02-06 23:08:51 -07:00
Owner

Summary

  • Middleware (requireAuth + requireAdmin) was already applied at the router level — this PR adds comprehensive test coverage to verify the auth/admin guards work correctly across all scraper endpoints
  • Adds 29 new tests covering 8 authorization scenarios for all 3 scraper endpoints (POST /run, GET /status, GET /history)
  • Total scraperRoutes test count: 81 (52 existing + 29 new)

Test Scenarios Added

  • Missing JWT token → 401 (3 tests)
  • Invalid JWT token → 401 (3 tests)
  • Expired JWT token → 401 (3 tests)
  • Token signed with wrong secret → 401 (3 tests)
  • Disabled user → 401 (3 tests)
  • Non-existent user → 401 (3 tests)
  • Non-admin user → 403 (3 tests)
  • Valid admin user → 200/202 (3 tests)
  • Middleware ordering → auth checked before admin (2 tests)

Test Plan

  • All 29 new auth middleware tests pass
  • All 81 scraperRoutes tests pass
  • Rebased on latest dev
## Summary - Middleware (requireAuth + requireAdmin) was already applied at the router level — this PR adds comprehensive test coverage to verify the auth/admin guards work correctly across all scraper endpoints - Adds 29 new tests covering 8 authorization scenarios for all 3 scraper endpoints (POST /run, GET /status, GET /history) - Total scraperRoutes test count: 81 (52 existing + 29 new) ## Test Scenarios Added - **Missing JWT token** → 401 (3 tests) - **Invalid JWT token** → 401 (3 tests) - **Expired JWT token** → 401 (3 tests) - **Token signed with wrong secret** → 401 (3 tests) - **Disabled user** → 401 (3 tests) - **Non-existent user** → 401 (3 tests) - **Non-admin user** → 403 (3 tests) - **Valid admin user** → 200/202 (3 tests) - **Middleware ordering** → auth checked before admin (2 tests) ## Test Plan - [x] All 29 new auth middleware tests pass - [x] All 81 scraperRoutes tests pass - [x] Rebased on latest dev
stephen added 1 commit 2026-02-06 23:07:16 -07:00
Add comprehensive auth middleware test coverage for scraper routes
All checks were successful
CI/CD Pipeline - Apartment API / Scan Dependencies (pull_request) Successful in 13s
CI/CD Pipeline - Apartment API / Lint & Test (pull_request) Successful in 41s
CI/CD Pipeline - Apartment API / Send Webhook Notification (pull_request) Successful in 2s
CI/CD Pipeline - Apartment API / Build & Push Image (pull_request) Has been skipped
CI/CD Pipeline - Apartment API / Deploy to Production (pull_request) Has been skipped
2b20a59512
Add 29 new tests verifying requireAuth and requireAdmin middleware
behavior across all 3 scraper endpoints (POST /run, GET /status,
GET /history). Test coverage includes:

- Missing JWT token returns 401
- Invalid JWT token returns 401
- Expired JWT token returns 401
- Token signed with wrong secret returns 401
- Disabled user returns 401
- Non-existent user returns 401
- Non-admin user returns 403
- Valid admin user receives expected 200/202 responses
- Middleware ordering: auth failures return 401 before admin check

Total scraperRoutes tests: 81 (52 existing + 29 new)
stephen merged commit a1ee25ef17 into dev 2026-02-06 23:08:51 -07:00
stephen deleted branch scraper/auth-middleware 2026-02-06 23:08:51 -07:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: stephen/apartment-dashboard-api#25
No description provided.