Skip to content

chore: set up authenticated tests #431

chore: set up authenticated tests

chore: set up authenticated tests #431

Triggered via push January 13, 2026 16:41
Status Failure
Total duration 4m 9s
Artifacts 1

main.yml

on: push
Build apps and run tests
4m 4s
Build apps and run tests
Build and publish docker image
0s
Build and publish docker image
Publish docs
Publish docs
Publish new release
0s
Publish new release
Fit to window
Zoom out
Zoom in

Annotations

10 errors and 1 notice
[firefox] › test/budgets.spec.ts:33:1 › Evaluate expressions correctly without errors: test/utils/assertNoErrors.ts#L15
3) [firefox] › test/budgets.spec.ts:33:1 › Evaluate expressions correctly without errors ───────── Error: Console error: [JavaScript Error: "Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:8080/api/login. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 404."] at utils/assertNoErrors.ts:15 13 | 14 | if (msg.type() === 'error') { > 15 | throw new Error(`Console error: ${text}`); | ^ 16 | } else if (msg.type() === 'warning') { 17 | throw new Error(`Console warning: ${text}`); 18 | } at Page.<anonymous> (/home/runner/work/ocular/ocular/test/utils/assertNoErrors.ts:15:13)
[firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages: test/budgets.spec.ts#L10
2) [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.fill: Test ended. Call log: - waiting for getByTestId('group-0-budget-0-0') 8 | 9 | // Validate column sums > 10 | await page.getByTestId('group-0-budget-0-0').fill('1000'); | ^ 11 | await page.getByTestId('group-0-budget-1-0').fill('200'); 12 | await page.getByTestId('group-0-budget-1-0').blur(); 13 | await expect(page.getByTestId('group-0-month-0-total')).toContainText('€1,200'); at /home/runner/work/ocular/ocular/test/budgets.spec.ts:10:48
[firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages: test/utils/assertNoErrors.ts#L15
2) [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: Console error: [JavaScript Error: "Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:8080/api/login. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 404."] at utils/assertNoErrors.ts:15 13 | 14 | if (msg.type() === 'error') { > 15 | throw new Error(`Console error: ${text}`); | ^ 16 | } else if (msg.type() === 'warning') { 17 | throw new Error(`Console warning: ${text}`); 18 | } at Page.<anonymous> (/home/runner/work/ocular/ocular/test/utils/assertNoErrors.ts:15:13)
[firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages: test/budgets.spec.ts#L10
2) [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: locator.fill: Test ended. Call log: - waiting for getByTestId('group-0-budget-0-0') 8 | 9 | // Validate column sums > 10 | await page.getByTestId('group-0-budget-0-0').fill('1000'); | ^ 11 | await page.getByTestId('group-0-budget-1-0').fill('200'); 12 | await page.getByTestId('group-0-budget-1-0').blur(); 13 | await expect(page.getByTestId('group-0-month-0-total')).toContainText('€1,200'); at /home/runner/work/ocular/ocular/test/budgets.spec.ts:10:48
[firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages: test/utils/assertNoErrors.ts#L15
2) [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: Console error: [JavaScript Error: "Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:8080/api/login. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 404."] at utils/assertNoErrors.ts:15 13 | 14 | if (msg.type() === 'error') { > 15 | throw new Error(`Console error: ${text}`); | ^ 16 | } else if (msg.type() === 'warning') { 17 | throw new Error(`Console warning: ${text}`); 18 | } at Page.<anonymous> (/home/runner/work/ocular/ocular/test/utils/assertNoErrors.ts:15:13)
[firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages: test/budgets.spec.ts#L10
2) [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ────────── Error: locator.fill: Test ended. Call log: - waiting for getByTestId('group-0-budget-0-0') 8 | 9 | // Validate column sums > 10 | await page.getByTestId('group-0-budget-0-0').fill('1000'); | ^ 11 | await page.getByTestId('group-0-budget-1-0').fill('200'); 12 | await page.getByTestId('group-0-budget-1-0').blur(); 13 | await expect(page.getByTestId('group-0-month-0-total')).toContainText('€1,200'); at /home/runner/work/ocular/ocular/test/budgets.spec.ts:10:48
[firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages: test/utils/assertNoErrors.ts#L15
2) [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ────────── Error: Console error: [JavaScript Error: "Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:8080/api/login. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing). Status code: 404."] at utils/assertNoErrors.ts:15 13 | 14 | if (msg.type() === 'error') { > 15 | throw new Error(`Console error: ${text}`); | ^ 16 | } else if (msg.type() === 'warning') { 17 | throw new Error(`Console warning: ${text}`); 18 | } at Page.<anonymous> (/home/runner/work/ocular/ocular/test/utils/assertNoErrors.ts:15:13)
[firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out: test/auth.spec.ts#L31
1) [firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out ──────────────────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toHaveAttribute(expected) failed Locator: getByTestId('navigation-cloud') Expected: "authenticated" Received: "idle" Timeout: 5000ms Call log: - Expect "toHaveAttribute" with timeout 5000ms - waiting for getByTestId('navigation-cloud') 9 × locator resolved to <button type="button" data-status="idle" class="m_ o_ w_ n_ U V" data-testid="navigation-cloud">…</button> - unexpected value "idle" 29 | await page.getByTestId('password').fill(user.password); 30 | await page.getByTestId('password').press('Enter'); > 31 | await expect(page.getByTestId('navigation-cloud')).toHaveAttribute('data-status', 'authenticated'); | ^ 32 | 33 | await page.getByTestId('navigation-income').click(); 34 | await page.getByTestId('group-0-budget-0-0').focus(); at /home/runner/work/ocular/ocular/test/auth.spec.ts:31:54
[firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out: test/auth.spec.ts#L31
1) [firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out ──────────────────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(locator).toHaveAttribute(expected) failed Locator: getByTestId('navigation-cloud') Expected: "authenticated" Received: "idle" Timeout: 5000ms Call log: - Expect "toHaveAttribute" with timeout 5000ms - waiting for getByTestId('navigation-cloud') 9 × locator resolved to <button type="button" data-status="idle" class="m_ o_ w_ n_ U V" data-testid="navigation-cloud">…</button> - unexpected value "idle" 29 | await page.getByTestId('password').fill(user.password); 30 | await page.getByTestId('password').press('Enter'); > 31 | await expect(page.getByTestId('navigation-cloud')).toHaveAttribute('data-status', 'authenticated'); | ^ 32 | 33 | await page.getByTestId('navigation-income').click(); 34 | await page.getByTestId('group-0-budget-0-0').focus(); at /home/runner/work/ocular/ocular/test/auth.spec.ts:31:54
[firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out: test/auth.spec.ts#L31
1) [firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out ──────────────────────── Error: expect(locator).toHaveAttribute(expected) failed Locator: getByTestId('navigation-cloud') Expected: "authenticated" Received: "idle" Timeout: 5000ms Call log: - Expect "toHaveAttribute" with timeout 5000ms - waiting for getByTestId('navigation-cloud') 9 × locator resolved to <button type="button" data-status="idle" class="m_ o_ w_ n_ U V" data-testid="navigation-cloud">…</button> - unexpected value "idle" 29 | await page.getByTestId('password').fill(user.password); 30 | await page.getByTestId('password').press('Enter'); > 31 | await expect(page.getByTestId('navigation-cloud')).toHaveAttribute('data-status', 'authenticated'); | ^ 32 | 33 | await page.getByTestId('navigation-income').click(); 34 | await page.getByTestId('group-0-budget-0-0').focus(); at /home/runner/work/ocular/ocular/test/auth.spec.ts:31:54
🎭 Playwright Run Summary
28 failed [firefox] › test/auth.spec.ts:32:1 › Log in and retain data on log-out ───────────────────────── [firefox] › test/budgets.spec.ts:6:1 › Show correct budget group totals and averages ─────────── [firefox] › test/budgets.spec.ts:33:1 › Evaluate expressions correctly without errors ────────── [firefox] › test/budgets.spec.ts:70:1 › Localizes numbers and parse them correctly ───────────── [firefox] › test/budgets.spec.ts:102:1 › Keep numbers correctly localized between languages ──── [firefox] › test/budgets.spec.ts:129:1 › Navigate budgets using the keyboard ─────────────────── [firefox] › test/budgets.spec.ts:153:1 › Collapse budget groups ──────────────────────────────── [firefox] › test/budgets.spec.ts:169:1 › Undo destructive actions ────────────────────────────── [firefox] › test/budgets.spec.ts:193:1 › Block undo after state is modified ──────────────────── [firefox] › test/budgets.spec.ts:210:1 › Undo a copy-paste action ────────────────────────────── [firefox] › test/budgets.spec.ts:230:1 › Drag and drop a budget into another group ───────────── [firefox] › test/budgets.spec.ts:241:1 › Re-order a budget group ─────────────────────────────── [firefox] › test/dashboard.spec.ts:6:1 › Show correct dashboard values based on incomes and expenses [firefox] › test/dashboard.spec.ts:22:1 › Show correct all time values based on the demo data ── [firefox] › test/dashboard.spec.ts:33:1 › Show correct remaining balance ─────────────────────── [firefox] › test/dashboard.spec.ts:61:1 › Show reduced dashboard for mobile devices ──────────── [firefox] › test/navigation.spec.ts:6:1 › Navigate and show correct page title ───────────────── [firefox] › test/settings.spec.ts:6:1 › Change the locale ────────────────────────────────────── [firefox] › test/settings.spec.ts:16:1 › Change the currency and apply correct locale format ─── [firefox] › test/settings.spec.ts:29:1 › Change the starting month and show correct labels ───── [firefox] › test/settings.spec.ts:52:1 › Show correct ending balance when using a monthly offset [firefox] › test/settings.spec.ts:69:1 › Carry over net-savings to next year ─────────────────── [firefox] › test/tools.spec.ts:6:1 › Load demo data ──────────────────────────────────────────── [firefox] › test/tools.spec.ts:15:1 › Ask for loading demo data if there is already data ─────── [firefox] › test/tools.spec.ts:51:1 › Keep value in cells if unchanged ───────────────────────── [firefox] › test/tools.spec.ts:61:1 › Copy data from one year to another ─────────────────────── [firefox] › test/tools.spec.ts:77:1 › Copy data from one year to another without values ──────── [firefox] › test/tools.spec.ts:94:1 › Copy partial data from one year to another ─────────────── 5 passed (2.8m)

Artifacts

Produced during runtime
Name Size Digest
test-results Expired
624 KB
sha256:5b24d81eaa74da4aca3e70ca6e6066d2ff774d51a4766d2df7a9f6e6b64a024b