Radar Tinder – Mobile App Testing Skill
When to use this skill
Use this skill when:
- •Adding or modifying features in the mobile app
- •Investigating leaderboard, points, or ranking inconsistencies
- •Debugging Firebase Auth, Firestore, or realtime update issues
- •Verifying radar report & confirmation flows
- •Testing navigation, nearby radar discovery, or directions logic
- •Validating on-device ONNX AI inference (offline & online)
Quick Smoke Test (5–10 minutes)
These checks must pass before deeper testing:
- •App builds and launches (Expo / EAS)
- •Firebase Auth initializes without errors
- •Login / signup works (email, Google, Apple if enabled)
- •Firestore connection established
- •Leaderboard screen loads without crash
If any fail → check logs, Firebase config, and environment variables first.
Test Layers
A) Manual Smoke Tests (Happy Path)
1. Authentication & Profile
- •Sign up with email
- •Profile document is created in Firestore
- •Username is unique
- •Display name defaults correctly
- •Avatar update reflects in leaderboard
2. Radar Reporting
- •Create a radar report (location + type)
- •Firestore document created
- •Reporter receives points
- •UI reflects updated points
3. Confirmations
- •Second user confirms radar
- •Confirmation stored in Firestore
- •Points awarded correctly
- •Duplicate confirmations prevented
4. Leaderboard & Realtime
- •Leaderboard updates after report/confirmation
- •Changes propagate without app restart
- •Ordering is correct (points / rank)
5. Navigation & Maps
- •Directions API returns valid route
- •Nearby radars load from Firestore
- •Radar alerts appear at correct distances
- •Map markers update correctly
6. AI Diagnostics (ONNX)
- •Sample image runs inference successfully
- •Output labels/confidence are readable
- •Works offline (no network dependency)
- •No UI freeze during inference
Firebase-Specific Validation
Firestore Expectations
- •Collections are structured consistently
- •Writes are idempotent where needed
- •Security rules allow valid actions only
- •No client-side rank calculation
Realtime / Updates
- •Firestore listeners are scoped correctly
- •No duplicate subscriptions
- •Updates clean up on unmount
Auth
- •Firebase Auth state syncs correctly
- •Token refresh does not break sessions
- •Sign-out clears local state
Common Debugging Playbooks
“Leaderboard not updating”
- •Firestore listener active?
- •Query orderBy / limit correct?
- •Security rules blocking reads?
- •Local state cache stale?
“Points not awarded”
- •Report written successfully?
- •Cloud Function triggered?
- •Transaction failed silently?
- •Duplicate prevention logic firing?
“Login works but profile missing”
- •Auth success but Firestore write failed?
- •Network race condition?
- •Security rules deny create?
Test Data Strategy
Use consistent test fixtures:
- •2 test users (reporter / confirmer)
- •2–3 radar reports
- •1 confirmation
- •1 sample image for AI
- •1 directions route fixture
How Copilot should respond when using this skill
For each test or bug request:
- •Identify affected flow (Auth / Radar / Confirm / Leaderboard / Maps / AI)
- •Provide minimal reproduction steps
- •Suggest fix hypothesis
- •Recommend tests to add/update
- •Output verification checklist
Output Format
Copilot responses should follow:
- •Reproduction Steps
- •Expected vs Actual
- •Root Cause Hypothesis
- •Fix Plan
- •Tests Added or Updated
- •How to Verify