testing plans - Andre-asn/Quack-Campus-Event-Coordinator GitHub Wiki
Auth
What is tested
Allowed domain signs in, disallowed domain rejected with no user created, unverified email rejected, existing user matched by provider subject id, protected route rejects anonymous callers
Level
Integration, provider mocked
Owner
TBD
Event creation
What is tested
Valid create, missing fields, missing or unknown category, out-of-bounds coordinates, start time beyond 48 hours, description over 140 characters
Level
Unit and integration
Owner
TBD
Map query
What is tested
Bounding box correctness including edge coordinates, date filtering, link-only exclusion, result limit
Level
Integration
Owner
TBD
Visibility
What is tested
Every cell of the authorization matrix
Level
Integration
Owner
TBD
Join and leave
What is tested
Join, double join, leave, leave when not joined, count accuracy
Level
Integration
Owner
TBD
Host controls
What is tested
Edit by host, edit by non-host rejected, cancel, edit after cancel rejected
Level
Integration
Owner
TBD
View counting
What is tested
Dedup per viewer per day, host views excluded
Level
Unit
Owner
TBD
Core loop
What is tested
Sign in, post, discover, join, leave as one scripted path
Level
End to end
Owner
TBD
Integration Testing
Integration tests use a real PostGIS database via Testcontainers, since in-memory databases mishandle spatial queries and constraints.
Edge Cases
Edge cases: events on the bounding box edge, events starting now, simultaneous joins, cancelled events with attendees, empty viewports, seven events at one spot, tampered share tokens, and non-stevens.edu Google accounts.
Demo Check
Demo check: run the full core loop on a phone with seed data and two real stevens.edu accounts.