Files
jobtrackingapp/docs/ui-modernisation/visual-correction/PUBLIC_LOCALE_RED.json
T

2 lines
24 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"numFailedTestSuites":1,"numFailedTests":4,"numPassedTestSuites":0,"numPassedTests":5,"numPendingTestSuites":0,"numPendingTests":0,"numRuntimeErrorTestSuites":0,"numTodoTests":0,"numTotalTestSuites":1,"numTotalTests":9,"openHandles":[],"snapshot":{"added":0,"didUpdate":false,"failure":false,"filesAdded":0,"filesRemoved":0,"filesRemovedList":[],"filesUnmatched":0,"filesUpdated":0,"matched":0,"total":0,"unchecked":0,"uncheckedKeysByFile":[],"unmatched":0,"updated":0},"startTime":1793751511232,"success":false,"testResults":[{"assertionResults":[{"ancestorTitles":["VerifyEmailPage"],"duration":67,"failing":false,"failureDetails":[],"failureMessages":[],"fullName":"VerifyEmailPage confirms the account and shows success when the link is valid","invocations":1,"location":null,"numPassingAsserts":2,"retryReasons":[],"startAt":1793751514518,"status":"passed","title":"confirms the account and shows success when the link is valid"},{"ancestorTitles":["VerifyEmailPage"],"duration":28,"failing":false,"failureDetails":[],"failureMessages":[],"fullName":"VerifyEmailPage shows an error when the link is invalid or expired","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"startAt":1793751514586,"status":"passed","title":"shows an error when the link is invalid or expired"},{"ancestorTitles":["VerifyEmailPage"],"duration":14,"failing":false,"failureDetails":[],"failureMessages":[],"fullName":"VerifyEmailPage shows an error without calling the API when the link is missing userId/token","invocations":1,"location":null,"numPassingAsserts":2,"retryReasons":[],"startAt":1793751514615,"status":"passed","title":"shows an error without calling the API when the link is missing userId/token"},{"ancestorTitles":["VerifyEmailPage"],"duration":31,"failing":false,"failureDetails":[],"failureMessages":[],"fullName":"VerifyEmailPage confirms a pending email change and requires a fresh sign-in","invocations":1,"location":null,"numPassingAsserts":2,"retryReasons":[],"startAt":1793751514629,"status":"passed","title":"confirms a pending email change and requires a fresh sign-in"},{"ancestorTitles":["VerifyEmailPage"],"duration":16,"failing":false,"failureDetails":[{"matcherResult":{"actual":2,"expected":1,"message":"expect(received).toBe(expected) // Object.is equality\n\nExpected: 1\nReceived: 2","name":"toBe","pass":false}}],"failureMessages":["Error: expect(received).toBe(expected) // Object.is equality\n\nExpected: 1\nReceived: 2\n at toBe (C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\src\\verify-email-page.test.tsx:79:26)"],"fullName":"VerifyEmailPage changing UI language never resubmits a pending confirmation: emailChange=false","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"startAt":1793751514660,"status":"failed","title":"changing UI language never resubmits a pending confirmation: emailChange=false"},{"ancestorTitles":["VerifyEmailPage"],"duration":13,"failing":false,"failureDetails":[{"matcherResult":{"actual":2,"expected":1,"message":"expect(received).toBe(expected) // Object.is equality\n\nExpected: 1\nReceived: 2","name":"toBe","pass":false}}],"failureMessages":["Error: expect(received).toBe(expected) // Object.is equality\n\nExpected: 1\nReceived: 2\n at toBe (C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\src\\verify-email-page.test.tsx:79:26)"],"fullName":"VerifyEmailPage changing UI language never resubmits a pending confirmation: emailChange=true","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"startAt":1793751514681,"status":"failed","title":"changing UI language never resubmits a pending confirmation: emailChange=true"},{"ancestorTitles":["VerifyEmailPage"],"duration":47,"failing":false,"failureDetails":[],"failureMessages":[],"fullName":"VerifyEmailPage localizes missing-link errors without a confirmation request","invocations":1,"location":null,"numPassingAsserts":3,"retryReasons":[],"startAt":1793751514695,"status":"passed","title":"localizes missing-link errors without a confirmation request"},{"ancestorTitles":["VerifyEmailPage"],"duration":36,"failing":false,"failureDetails":[{"matcherResult":{"message":"expect(jest.fn()).toHaveBeenCalledTimes(expected)\n\nExpected number of calls: 1\nReceived number of calls: 2","pass":false}}],"failureMessages":["Error: expect(jest.fn()).toHaveBeenCalledTimes(expected)\n\nExpected number of calls: 1\nReceived number of calls: 2\n at Object.toHaveBeenCalledTimes (C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\src\\verify-email-page.test.tsx:101:28)"],"fullName":"VerifyEmailPage localizes a failed confirmation fallback without retrying the one-time command","invocations":1,"location":null,"numPassingAsserts":2,"retryReasons":[],"startAt":1793751514742,"status":"failed","title":"localizes a failed confirmation fallback without retrying the one-time command"},{"ancestorTitles":["VerifyEmailPage"],"duration":50,"failing":false,"failureDetails":[{"name":"TestingLibraryElementError"}],"failureMessages":["TestingLibraryElementError: Unable to find an accessible element with the role \"alert\"\n\nHere are the accessible roles:\n\n main:\n\n Name \"Confirm your new email\":\n \u001b[36m<main\u001b[39m\n \u001b[33maria-labelledby\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-ljlm1v\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n banner:\n\n Name \"\":\n \u001b[36m<header\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-163u82n\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n heading:\n\n Name \"Confirm your new email\":\n \u001b[36m<h1\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiTypography-root MuiTypography-pageTitle css-uf4832-MuiTypography-root\"\u001b[39m\n \u001b[33mid\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n status:\n\n Name \"\":\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation0 MuiAlert-root MuiAlert-colorSuccess MuiAlert-standardSuccess MuiAlert-standard css-kd2ade-MuiPaper-root-MuiAlert-root\"\u001b[39m\n \u001b[33mrole\u001b[39m=\u001b[32m\"status\"\u001b[39m\n \u001b[33mstyle\u001b[39m=\u001b[32m\"--Paper-shadow: none;\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n button:\n\n Name \"Back to login\":\n \u001b[36m<button\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiButtonBase-root MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary css-83fk99-MuiButtonBase-root-MuiButton-root\"\u001b[39m\n \u001b[33mtabindex\u001b[39m=\u001b[32m\"0\"\u001b[39m\n \u001b[33mtype\u001b[39m=\u001b[32m\"button\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n\nIgnored nodes: comments, script, style\n\u001b[36m<body>\u001b[39m\n \u001b[36m<div>\u001b[39m\n \u001b[36m<main\u001b[39m\n \u001b[33maria-labelledby\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-ljlm1v\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation0 css-bhj8kq-MuiPaper-root\"\u001b[39m\n \u001b[33mstyle\u001b[39m=\u001b[32m\"--Paper-shadow: none;\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<header\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-163u82n\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-14m33b5\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<h1\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiTypography-root MuiTypography-pageTitle css-uf4832-MuiTypography-root\"\u001b[39m\n \u001b[33mid\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[0mConfirm your new email\u001b[0m\n \u001b[36m</h1>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</header>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-j4vego\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-1hdbc19\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation0 MuiAlert-root MuiAlert-colorSuccess MuiAlert-standardSuccess MuiAlert-standard css-kd2ade-MuiPaper-root-MuiAlert-root\"\u001b[39m\n \u001b[33mrole\u001b[39m=\u001b[32m\"status\"\u001b[39m\n \u001b[33mstyle\u001b[39m=\u001b[32m\"--Paper-shadow: none;\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiAlert-icon css-1wrdnka-MuiAlert-icon\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<svg\u001b[39m\n \u001b[33maria-hidden\u001b[39m=\u001b[32m\"true\"\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiSvgIcon-root MuiSvgIcon-fontSizeInherit css-1ckov0h-MuiSvgIcon-root\"\u001b[39m\n \u001b[33mdata-testid\u001b[39m=\u001b[32m\"SuccessOutlinedIcon\"\u001b[39m\n \u001b[33mfocusable\u001b[39m=\u001b[32m\"false\"\u001b[39m\n \u001b[33mviewBox\u001b[39m=\u001b[32m\"0 0 24 24\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<path\u001b[39m\n \u001b[33md\u001b[39m=\u001b[32m\"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z\"\u001b[39m\n \u001b[36m/>\u001b[39m\n \u001b[36m</svg>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiAlert-message css-zioonp-MuiAlert-message\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[0mYour email has changed. Sign in again with the new address.\u001b[0m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-re1ddm\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<button\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiButtonBase-root MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary css-83fk99-MuiButtonBase-root-MuiButton-root\"\u001b[39m\n \u001b[33mtabindex\u001b[39m=\u001b[32m\"0\"\u001b[39m\n \u001b[33mtype\u001b[39m=\u001b[32m\"button\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[0mBack to login\u001b[0m\n \u001b[36m</button>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</main>\u001b[39m\n \u001b[36m</div>\u001b[39m\n\u001b[36m</body>\u001b[39m\n at Object.getElementError (C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\node_modules\\@testing-library\\dom\\dist\\config.js:37:19)\n at C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\node_modules\\@testing-library\\dom\\dist\\query-helpers.js:76:38\n at C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\node_modules\\@testing-library\\dom\\dist\\query-helpers.js:52:17\n at C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\node_modules\\@testing-library\\dom\\dist\\query-helpers.js:95:19\n at Object.getByRole (C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\src\\verify-email-page.test.tsx:112:19)"],"fullName":"VerifyEmailPage does not let an older confirmation replace a different flow missing-link error","invocations":1,"location":null,"numPassingAsserts":1,"retryReasons":[],"startAt":1793751514778,"status":"failed","title":"does not let an older confirmation replace a different flow missing-link error"}],"endTime":1793751514845,"message":" ● VerifyEmailPage › changing UI language never resubmits a pending confirmation: emailChange=false\n\n expect(received).toBe(expected) // Object.is equality\n\n Expected: 1\n Received: 2\n\n 77 | const pendingCalls = mockedApi.post.mock.calls.length;\n 78 | await act(async () => finish({ data: {} }));\n > 79 | expect(pendingCalls).toBe(1);\n | ^\n 80 | expect(mockedApi.post).toHaveBeenCalledTimes(1);\n 81 | expect(screen.getByRole('status')).toHaveTextContent(translations.nb[emailChange ? 'confirmEmailChangeSuccess' : 'verifyEmailSuccess']);\n 82 | act(() => window.dispatchEvent(new StorageEvent('storage', { key: 'uiLanguage', newValue: 'en' })));\n\n at toBe (src/verify-email-page.test.tsx:79:26)\n\n ● VerifyEmailPage › changing UI language never resubmits a pending confirmation: emailChange=true\n\n expect(received).toBe(expected) // Object.is equality\n\n Expected: 1\n Received: 2\n\n 77 | const pendingCalls = mockedApi.post.mock.calls.length;\n 78 | await act(async () => finish({ data: {} }));\n > 79 | expect(pendingCalls).toBe(1);\n | ^\n 80 | expect(mockedApi.post).toHaveBeenCalledTimes(1);\n 81 | expect(screen.getByRole('status')).toHaveTextContent(translations.nb[emailChange ? 'confirmEmailChangeSuccess' : 'verifyEmailSuccess']);\n 82 | act(() => window.dispatchEvent(new StorageEvent('storage', { key: 'uiLanguage', newValue: 'en' })));\n\n at toBe (src/verify-email-page.test.tsx:79:26)\n\n ● VerifyEmailPage › localizes a failed confirmation fallback without retrying the one-time command\n\n expect(jest.fn()).toHaveBeenCalledTimes(expected)\n\n Expected number of calls: 1\n Received number of calls: 2\n\n 99 | await act(async () => window.dispatchEvent(new StorageEvent('storage', { key: 'uiLanguage', newValue: 'nb' })));\n 100 | expect(screen.getByRole('alert')).toHaveTextContent(translations.nb.verifyEmailFailed);\n > 101 | expect(mockedApi.post).toHaveBeenCalledTimes(1);\n | ^\n 102 | });\n 103 |\n 104 | it('does not let an older confirmation replace a different flow missing-link error', async () => {\n\n at Object.toHaveBeenCalledTimes (src/verify-email-page.test.tsx:101:28)\n\n ● VerifyEmailPage › does not let an older confirmation replace a different flow missing-link error\n\n TestingLibraryElementError: Unable to find an accessible element with the role \"alert\"\n\n Here are the accessible roles:\n\n main:\n\n Name \"Confirm your new email\":\n \u001b[36m<main\u001b[39m\n \u001b[33maria-labelledby\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-ljlm1v\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n banner:\n\n Name \"\":\n \u001b[36m<header\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-163u82n\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n heading:\n\n Name \"Confirm your new email\":\n \u001b[36m<h1\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiTypography-root MuiTypography-pageTitle css-uf4832-MuiTypography-root\"\u001b[39m\n \u001b[33mid\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n status:\n\n Name \"\":\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation0 MuiAlert-root MuiAlert-colorSuccess MuiAlert-standardSuccess MuiAlert-standard css-kd2ade-MuiPaper-root-MuiAlert-root\"\u001b[39m\n \u001b[33mrole\u001b[39m=\u001b[32m\"status\"\u001b[39m\n \u001b[33mstyle\u001b[39m=\u001b[32m\"--Paper-shadow: none;\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n button:\n\n Name \"Back to login\":\n \u001b[36m<button\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiButtonBase-root MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary css-83fk99-MuiButtonBase-root-MuiButton-root\"\u001b[39m\n \u001b[33mtabindex\u001b[39m=\u001b[32m\"0\"\u001b[39m\n \u001b[33mtype\u001b[39m=\u001b[32m\"button\"\u001b[39m\n \u001b[36m/>\u001b[39m\n\n --------------------------------------------------\n\n Ignored nodes: comments, script, style\n \u001b[36m<body>\u001b[39m\n \u001b[36m<div>\u001b[39m\n \u001b[36m<main\u001b[39m\n \u001b[33maria-labelledby\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-ljlm1v\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation0 css-bhj8kq-MuiPaper-root\"\u001b[39m\n \u001b[33mstyle\u001b[39m=\u001b[32m\"--Paper-shadow: none;\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<header\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-163u82n\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-14m33b5\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<h1\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiTypography-root MuiTypography-pageTitle css-uf4832-MuiTypography-root\"\u001b[39m\n \u001b[33mid\u001b[39m=\u001b[32m\"_r_g_\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[0mConfirm your new email\u001b[0m\n \u001b[36m</h1>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</header>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-j4vego\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-1hdbc19\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiPaper-root MuiPaper-elevation MuiPaper-rounded MuiPaper-elevation0 MuiAlert-root MuiAlert-colorSuccess MuiAlert-standardSuccess MuiAlert-standard css-kd2ade-MuiPaper-root-MuiAlert-root\"\u001b[39m\n \u001b[33mrole\u001b[39m=\u001b[32m\"status\"\u001b[39m\n \u001b[33mstyle\u001b[39m=\u001b[32m\"--Paper-shadow: none;\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiAlert-icon css-1wrdnka-MuiAlert-icon\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<svg\u001b[39m\n \u001b[33maria-hidden\u001b[39m=\u001b[32m\"true\"\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiSvgIcon-root MuiSvgIcon-fontSizeInherit css-1ckov0h-MuiSvgIcon-root\"\u001b[39m\n \u001b[33mdata-testid\u001b[39m=\u001b[32m\"SuccessOutlinedIcon\"\u001b[39m\n \u001b[33mfocusable\u001b[39m=\u001b[32m\"false\"\u001b[39m\n \u001b[33mviewBox\u001b[39m=\u001b[32m\"0 0 24 24\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<path\u001b[39m\n \u001b[33md\u001b[39m=\u001b[32m\"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z\"\u001b[39m\n \u001b[36m/>\u001b[39m\n \u001b[36m</svg>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiAlert-message css-zioonp-MuiAlert-message\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[0mYour email has changed. Sign in again with the new address.\u001b[0m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m<div\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiBox-root css-re1ddm\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[36m<button\u001b[39m\n \u001b[33mclass\u001b[39m=\u001b[32m\"MuiButtonBase-root MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary MuiButton-root MuiButton-contained MuiButton-containedPrimary MuiButton-sizeMedium MuiButton-containedSizeMedium MuiButton-colorPrimary css-83fk99-MuiButtonBase-root-MuiButton-root\"\u001b[39m\n \u001b[33mtabindex\u001b[39m=\u001b[32m\"0\"\u001b[39m\n \u001b[33mtype\u001b[39m=\u001b[32m\"button\"\u001b[39m\n \u001b[36m>\u001b[39m\n \u001b[0mBack to login\u001b[0m\n \u001b[36m</button>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</main>\u001b[39m\n \u001b[36m</div>\u001b[39m\n \u001b[36m</body>\u001b[39m\n\n 110 | expect(await screen.findByText(translations.en.missingEmailChangeLinkInfo)).toBeInTheDocument();\n 111 | await act(async () => finish({ data: {} }));\n > 112 | expect(screen.getByRole('alert')).toHaveTextContent(translations.en.missingEmailChangeLinkInfo);\n | ^\n 113 | expect(mockedApi.post).toHaveBeenCalledTimes(1);\n 114 | });\n 115 | });\n\n at Object.getElementError (node_modules/@testing-library/dom/dist/config.js:37:19)\n at node_modules/@testing-library/dom/dist/query-helpers.js:76:38\n at node_modules/@testing-library/dom/dist/query-helpers.js:52:17\n at node_modules/@testing-library/dom/dist/query-helpers.js:95:19\n at Object.getByRole (src/verify-email-page.test.tsx:112:19)\n","name":"C:\\Users\\Connor\\.codex\\worktrees\\direct-roadmap-integration\\Job tracker\\job-tracker-ui\\src\\verify-email-page.test.tsx","startTime":1793751512139,"status":"failed","summary":""}],"wasInterrupted":false}