[ProgramSlugUrl] Refactor ineligible page to be associated with a GET route - #13367
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #13367 +/- ##
============================================
- Coverage 81.49% 81.45% -0.04%
- Complexity 5354 5361 +7
============================================
Files 595 597 +2
Lines 23982 24023 +41
Branches 1773 1777 +4
============================================
+ Hits 19544 19568 +24
- Misses 3779 3797 +18
+ Partials 659 658 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@gwendolyngoetz these are the warnings I'm seeing. But maybe it's pointing to other issues in that file and I just assumed those lines were included because they're using |
I think that's a bug in what they are considering a locator. Playwright clearly calls |
I'll remove that change from this PR and make a follow-up PR to disable that rule. It is very noisy! |



Description
Refactor the way we serve up the ineligible page so that it is served as a GET request from it's own controller, rather than rendered directly from a POST request when an applicant is found ineligible while updating their answers. This is necessary to allow language selection to work with program slug urls. Also pages should generally be accessible by a GET request, so this is fixing some less-than-ideal code paths we introduced at some point.
I used Claude to help me figure out the error handling in
ApplicantProgramIneligibleControllerand to audit my test coverage (it suggested testing a bunch of error paths, but that seems like overkill to me so I left those off).Checklist
General
Read the full guidelines for PRs here
civiform/developers, or a more specific round-robin listciviform/eng-adminas FYI (if this PR includes functionality changes and neither you nor the primary reviewer is an admin)isDevOrStagingInstructions for manual testing
With the
PROGRAM_SLUG_URLS_ENABLEDflag on:With the
PROGRAM_SLUG_URLS_ENABLEDflag off:Issue(s) this completes
Fixes #13365