Skip to content

Continue festival deeplink logging implementation #961

Continue festival deeplink logging implementation

Continue festival deeplink logging implementation #961

Triggered via pull request December 26, 2025 10:45
Status Failure
Total duration 6m 5s
Artifacts 4

build-deploy.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

10 errors and 1 notice
test-e2e-web
Process completed with exit code 1.
[chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival: test-e2e/routing.spec.ts#L120
3) [chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/invalid-fest?search=IPA&category=beer" 118 | 119 | // Should redirect to default festival and preserve query params > 120 | expect(page.url()).toContain(`/${festivalId}`); | ^ 121 | expect(page.url()).toContain('search=IPA'); 122 | expect(page.url()).toContain('category=beer'); 123 | }); at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:120:24
[chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival: test-e2e/routing.spec.ts#L120
3) [chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/invalid-fest?search=IPA&category=beer" 118 | 119 | // Should redirect to default festival and preserve query params > 120 | expect(page.url()).toContain(`/${festivalId}`); | ^ 121 | expect(page.url()).toContain('search=IPA'); 122 | expect(page.url()).toContain('category=beer'); 123 | }); at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:120:24
[chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival: test-e2e/routing.spec.ts#L120
3) [chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/invalid-fest?search=IPA&category=beer" 118 | 119 | // Should redirect to default festival and preserve query params > 120 | expect(page.url()).toContain(`/${festivalId}`); | ^ 121 | expect(page.url()).toContain('search=IPA'); 122 | expect(page.url()).toContain('category=beer'); 123 | }); at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:120:24
[chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival: test-e2e/routing.spec.ts#L110
2) [chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/invalid-fest" 108 | 109 | // Should redirect to default festival > 110 | expect(page.url()).toContain(`/${festivalId}`); | ^ 111 | expect(page.url()).not.toContain('invalid-fest'); 112 | }); 113 | at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:110:24
[chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival: test-e2e/routing.spec.ts#L110
2) [chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/invalid-fest" 108 | 109 | // Should redirect to default festival > 110 | expect(page.url()).toContain(`/${festivalId}`); | ^ 111 | expect(page.url()).not.toContain('invalid-fest'); 112 | }); 113 | at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:110:24
[chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival: test-e2e/routing.spec.ts#L110
2) [chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/invalid-fest" 108 | 109 | // Should redirect to default festival > 110 | expect(page.url()).toContain(`/${festivalId}`); | ^ 111 | expect(page.url()).not.toContain('invalid-fest'); 112 | }); 113 | at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:110:24
[chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home: test-e2e/routing.spec.ts#L36
1) [chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/" 34 | 35 | // Root should redirect to festival-scoped URL > 36 | expect(page.url()).toContain(`/${festivalId}`); | ^ 37 | }); 38 | 39 | test('should navigate to festival home without errors', async ({ page }) => { at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:36:24
[chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home: test-e2e/routing.spec.ts#L36
1) [chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/" 34 | 35 | // Root should redirect to festival-scoped URL > 36 | expect(page.url()).toContain(`/${festivalId}`); | ^ 37 | }); 38 | 39 | test('should navigate to festival home without errors', async ({ page }) => { at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:36:24
[chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home: test-e2e/routing.spec.ts#L36
1) [chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home Error: expect(received).toContain(expected) // indexOf Expected substring: "/cbf2025" Received string: "http://127.0.0.1:8080/" 34 | 35 | // Root should redirect to festival-scoped URL > 36 | expect(page.url()).toContain(`/${festivalId}`); | ^ 37 | }); 38 | 39 | test('should navigate to festival home without errors', async ({ page }) => { at /home/runner/work/cambridge-beer-festival-app/cambridge-beer-festival-app/test-e2e/routing.spec.ts:36:24
🎭 Playwright Run Summary
3 failed [chromium] › test-e2e/routing.spec.ts:31:7 › URL Routing - Basic Routes (Phase 1 - Festival-Scoped) › should redirect root path to festival home [chromium] › test-e2e/routing.spec.ts:104:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should redirect invalid festival ID to default festival [chromium] › test-e2e/routing.spec.ts:114:7 › Deep Linking - Parameterized Routes (Phase 1 - Festival-Scoped) › should preserve query parameters when redirecting invalid festival 17 passed (1.3m)

Artifacts

Produced during runtime
Name Size Digest
app-debug-apk Expired
73.7 MB
sha256:f2820e9c116012a9cbc63fe1865cf2d6d00b594e3dba8aefe3aac1bcfd9804fa
code-coverage-report Expired
281 KB
sha256:7913e95a2484206eac75e9c3e53277b393258402a6802b50b4676be3f1698477
playwright-report Expired
3.75 MB
sha256:b2bf6bce23ffb28efe73f3c0aa69c3bcea4acb6213249c559e05e0582156201a
web-build Expired
10.7 MB
sha256:692a71af574d98f76acc4d4730a8596a7ff970ad92b209c6d0429040d3438799