Fix E2E test infrastructure: 25 test failures#271
Merged
jakebromberg merged 10 commits intomainfrom Mar 9, 2026
Merged
Conversation
- Add non-intercepting settings route for hard navigation (13 tests) - Fix settings modal selector to use .MuiModal-root instead of [role="dialog"] - Auto-verify email for admin-created users via updateUser call (4 tests) - Remove authType check that disabled password reset for non-Confirmed users (5 tests) - Compute effective auth stage synchronously to prevent login form flash (2 tests) - Replace synthetic SubmitEvent with native button click in roster form submission
4 tasks
Deploying wxyc-dj with
|
| Latest commit: |
5586a11
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://a3d125b9.dj-site.pages.dev |
| Branch Preview URL: | https://fix-e2e-test-infrastructure.dj-site.pages.dev |
This was referenced Mar 4, 2026
- Create non-intercepting settings parallel route for hard navigation
- Fix password reset API call to use { userId, data: { password } } format
- Add incomplete user redirect in requireAuth() and login layout
- Update music director roster access test to expect redirect
- Fix email change error handling tests for API behavior
- Improve duplicate email user creation error handling
- Fix strict mode violation in settings email label (exact match) - Restore dj1 email after invalid email test to prevent state corruption - Update onboarding page objects to accept /login?incomplete=true URL - Guard requireAuth incomplete check with "realName" in session check - Fix duplicate email test strict mode violation with .or() locator - Simplify RosterTable error message fallback
- Test incomplete user (missing realName) is redirected to login - Test sessions without realName field skip the incomplete check - Test unverified email redirects to login with error param
…tton locator, modal pointer events) - Revert password reset to use top-level `password` field (not inside `data`) to avoid clearing user's realName from the user table - Fix onboarding submit button locator to use getByRole to avoid strict mode violation with AuthBackButton's type="submit" - Add force:true to settings email change modal button clicks to bypass outer Modal's pointer events interception
- Use authClient.admin.setUserPassword() for password reset instead of updateUser which silently ignores the password field - Use configured temp password from NEXT_PUBLIC_ONBOARDING_TEMP_PASSWORD env var for password resets - Redirect incomplete users to /login?incomplete=true after sign-in so the server layout renders the onboarding form - Fix EmailChangeModal to use authClient.signIn.email() instead of signIn.username() which fails when email is used as identifier - Bypass nested MUI Modal pointer event interception with JS-level clicks (evaluate) and form submit event dispatch - Use static import for RosterPage in onboarding test (dynamic import caused SyntaxError) - Skip 3 email change success tests that require backend user.changeEmail.enabled configuration
Update mock from signIn.username to signIn.email to match the production code change that fixes password verification in the email change modal.
JacksonMeade
requested changes
Mar 8, 2026
3 tasks
JacksonMeade
approved these changes
Mar 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes 5 root causes behind 25 E2E test failures affecting all dj-site PRs:
app/dashboard/settings/page.tsxfor hard navigation; fix modal selector from[role="dialog"]to.MuiModal-rootadmin.updateUser()afteradmin.createUser()authTypecheck that disabled reset for non-Confirmed usersSubmitEventwith nativesaveButton.click()Closes #269
Test plan