--- phase: 07-testing-polish plan: 01 type: execute depends_on: [] files_modified: [] --- Verify complete provider workflow from registration through job deactivation works end-to-end without errors. Purpose: Ensure providers can successfully register, submit jobs, manage their listings, and deactivate when needed - the complete lifecycle works as designed. Output: Verified provider user journey, documented test results, issues logged if any. ~/.claude/get-shit-done/workflows/execute-plan.md ~/.claude/get-shit-done/references/checkpoints.md ./summary.md @.planning/PROJECT.md @.planning/ROADMAP.md @.planning/STATE.md # Prior work being tested: @.planning/phases/02-provider-registration-auth/02-01-SUMMARY.md @.planning/phases/02-provider-registration-auth/02-02-SUMMARY.md @.planning/phases/02-provider-registration-auth/02-03-SUMMARY.md @.planning/phases/02-provider-registration-auth/02-04-SUMMARY.md @.planning/phases/03-job-management-core/03-01-SUMMARY.md @.planning/phases/03-job-management-core/03-02-SUMMARY.md @.planning/phases/04-job-deactivation-system/04-01-SUMMARY.md **Tech stack being tested:** Formidable Forms (F1 registration, F2 submission, F3 edit, F4 deactivation), custom role `ddhh_provider`, ACF fields, access control, email notifications **Expected flows:** Self-registration with auto-login, dashboard access, job submission to pending, job editing (resets to pending), job deactivation (to draft) **Established patterns:** German UI, ownership validation, admin approval workflow Provider registration and login flow (Phase 2) **Test Registration:** 1. Visit: /anbieter-login/ (login/registration page) 2. Fill out registration form (F1) with test data: - Email: test-provider-[timestamp]@test.com - Company name, password, etc. 3. Submit form 4. Confirm: Auto-logged in after registration (no manual login needed) 5. Confirm: Redirected to provider dashboard (/anbieter-dashboard/) 6. Confirm: Dashboard shows "Keine Stellenangebote gefunden" (no jobs yet) **Test Login (existing user):** 1. Log out 2. Return to /anbieter-login/ 3. Log in with registered credentials 4. Confirm: Redirected to dashboard 5. Confirm: Access control works (logged-in providers can access dashboard) **Test Access Control:** 1. Log out 2. Try to visit /anbieter-dashboard/ directly 3. Confirm: Redirected to /anbieter-login/ (non-logged-in users blocked) Type "approved" when registration and login work correctly, or describe issues to investigate Job submission and editing flow (Phase 3) **Prerequisites:** Logged in as provider from previous test **Test Job Submission (F2):** 1. From dashboard, click "Neues Angebot erstellen" or similar submission link 2. Fill out job submission form with test data: - Job title (Stellentitel) - Description (Beschreibung) - Location (Standort) - Job type (Art der Stelle) - Contact email - Logo upload (optional) 3. Submit form 4. Confirm: Redirected back to dashboard 5. Confirm: New job appears in dashboard with "pending" status 6. Confirm: Job NOT visible on public job archive (/jobangebote/) yet **Test Job Edit (F3):** 1. From dashboard, click "Bearbeiten" (edit) button on submitted job 2. Edit form appears with pre-filled data 3. Modify job title or description 4. Submit changes 5. Confirm: Redirected back to dashboard 6. Confirm: Job status reset to "pending" (requires re-approval) 7. Confirm: Changes saved correctly **Test Admin Notification:** 1. Check admin email inbox (WordPress site admin email) 2. Confirm: Received notification about new job submission 3. Confirm: Email includes job title, provider details, direct edit link Type "approved" when submission and editing work correctly, or describe issues Job deactivation flow (Phase 4) **Prerequisites:** - Job from previous test exists - Admin approves job (set status to "publish" in WP admin) - Wait for job to appear on dashboard as "published" **Test Deactivation (F4):** 1. From dashboard, find published job 2. Click "Deaktivieren" (deactivate) button 3. Deactivation form appears with reason field (required) 4. Enter deactivation reason: "Test: Position filled" 5. Submit form 6. Confirm: Job status changes to "draft" 7. Confirm: Job no longer visible on public job archive 8. Confirm: Job still visible in provider's dashboard (as draft) **Test Admin Deactivation Notification:** 1. Check admin email inbox 2. Confirm: Received notification about job deactivation 3. Confirm: Email includes job title, provider details, deactivation reason **Test Deactivation Access Control:** 1. Try to deactivate a pending/draft job (should not have deactivate button) 2. Confirm: Deactivate button only appears for published jobs Type "approved" when deactivation flow works correctly, or describe issues Before declaring plan complete: - [ ] Provider can register and auto-login - [ ] Provider can submit jobs (go to pending) - [ ] Provider can edit jobs (reset to pending) - [ ] Provider can deactivate published jobs (go to draft) - [ ] Access control prevents non-logged-in access - [ ] Admin receives email notifications for submissions and deactivations - [ ] German UI labels display correctly - Complete provider lifecycle tested end-to-end - All workflows function without errors - Access control works correctly - Email notifications reach admin inbox - German UI displays properly - Any issues documented for fixes After completion, create `.planning/phases/07-testing-polish/07-01-SUMMARY.md`: # Phase 7 Plan 1: Provider Flow E2E Testing Summary **[Substantive one-liner - what was tested and verified]** ## Test Results - [Registration/Login: PASS/FAIL with details] - [Job Submission/Edit: PASS/FAIL with details] - [Job Deactivation: PASS/FAIL with details] ## Issues Found [List any bugs, UX issues, or problems discovered, or "None"] ## Fixes Applied [List any immediate fixes made during testing, or "None"] ## Next Step Ready for Plan 07-02 (Mentor flow E2E testing). Can run in parallel if desired.