Skip to content

Allow sharing assigns between live navigation #6904

Allow sharing assigns between live navigation

Allow sharing assigns between live navigation #6904

Triggered via pull request October 27, 2024 12:04
Status Failure
Total duration 4m 9s
Artifacts 7

ci.yml

on: pull_request
Matrix: e2e test
Matrix: mix_test
Matrix: npm test
coverage report
0s
coverage report
Fit to window
Zoom out
Zoom in

Annotations

15 errors, 31 warnings, and 1 notice
mix test (OTP 27 | Elixir 1.17.2)
Process completed with exit code 1.
mix test (OTP 25.3 | Elixir 1.15.4)
The job was canceled because "_1_17_2_27_lint" failed.
mix test (OTP 24.3 | Elixir 1.13.4)
The job was canceled because "_1_17_2_27_lint" failed.
mix test (OTP 24.3 | Elixir 1.13.4)
The operation was canceled.
mix test (OTP 26.2 | Elixir 1.16.3)
The job was canceled because "_1_17_2_27_lint" failed.
[chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
1) [chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
1) [chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
1) [chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
2) [firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
2) [firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
2) [firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
3) [webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
3) [webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
[webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket: test/e2e/tests/navigation.spec.js#L58
3) [webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: ArrayContaining [{"payload": StringContaining "phx_leave", "type": "sent"}, {"payload": StringContaining "phx_join", "type": "sent"}, {"payload": StringContaining "phx_close", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}, {"payload": StringContaining "phx_reply", "type": "received"}] Received: [[Object], [Object]] 56 | await expect(networkEvents).toEqual([]); 57 | // we don't assert the order of the events here, because they are not deterministic > 58 | await expect(webSocketEvents).toEqual(expect.arrayContaining([ | ^ 59 | { type: "sent", payload: expect.stringContaining("phx_leave") }, 60 | { type: "sent", payload: expect.stringContaining("phx_join") }, 61 | { type: "received", payload: expect.stringContaining("phx_close") }, at /__w/phoenix_live_view/phoenix_live_view/test/e2e/tests/navigation.spec.js:58:33
e2e test (1.17.2, 27)
Process completed with exit code 1.
mix test (OTP 27 | Elixir 1.17.2)
No files were found with the provided path: cover/default.coverdata. No artifacts will be uploaded.
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L64
Phoenix.LiveViewTest.Support.FooBarLive.mount/3 is undefined (module Phoenix.LiveViewTest.Support.FooBarLive is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L69
Phoenix.LiveViewTest.Support.FooBarLive.mount/3 is undefined (module Phoenix.LiveViewTest.Support.FooBarLive is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L65
Phoenix.LiveViewTest.Support.FooBarLive.Index.mount/3 is undefined (module Phoenix.LiveViewTest.Support.FooBarLive.Index is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L66
Phoenix.LiveViewTest.Support.FooBarLive.Index.mount/3 is undefined (module Phoenix.LiveViewTest.Support.FooBarLive.Index is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L67
Phoenix.LiveViewTest.Support.FooBarLive.Nested.Index.mount/3 is undefined (module Phoenix.LiveViewTest.Support.FooBarLive.Nested.Index is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L68
Phoenix.LiveViewTest.Support.FooBarLive.Nested.Index.mount/3 is undefined (module Phoenix.LiveViewTest.Support.FooBarLive.Nested.Index is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L118
Phoenix.LiveViewTest.Support.HooksLive.OwnMount.mount/3 is undefined (module Phoenix.LiveViewTest.Support.HooksLive.OwnMount is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L34
Phoenix.LiveViewTest.Support.InnerLive.mount/3 is undefined (module Phoenix.LiveViewTest.Support.InnerLive is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L71
Phoenix.LiveViewTest.Support.NoSuffix.mount/3 is undefined (module Phoenix.LiveViewTest.Support.NoSuffix is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L70
Phoenix.LiveViewTest.Support.Phoenix.LiveViewTest.Support.Live.Nested.Module.mount/3 is undefined (module Phoenix.LiveViewTest.Support.Phoenix.LiveViewTest.Support.Live.Nested.Module is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L118
Phoenix.LiveViewTest.Support.HooksLive.OwnMount.mount/3 is undefined (module Phoenix.LiveViewTest.Support.HooksLive.OwnMount is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L34
Phoenix.LiveViewTest.Support.InnerLive.mount/3 is undefined (module Phoenix.LiveViewTest.Support.InnerLive is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L71
Phoenix.LiveViewTest.Support.NoSuffix.mount/3 is undefined (module Phoenix.LiveViewTest.Support.NoSuffix is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L70
Phoenix.LiveViewTest.Support.Phoenix.LiveViewTest.Support.Live.Nested.Module.mount/3 is undefined (module Phoenix.LiveViewTest.Support.Phoenix.LiveViewTest.Support.Live.Nested.Module is not available or is yet to be defined)
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L157
Phoenix.LiveViewTest.Support.ClassListLive.mount/3 is undefined or private
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L119
Phoenix.LiveViewTest.Support.HooksLive.HaltMount.mount/3 is undefined or private
mix test (OTP 25.3 | Elixir 1.15.4): test/support/router.ex#L125
Phoenix.LiveViewTest.Support.HooksLive.OnMountOptions.mount/3 is undefined or private
mix test (OTP 24.3 | Elixir 1.13.4)
Logger.default_formatter/1 is undefined or private
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L118
Phoenix.LiveViewTest.Support.HooksLive.OwnMount.mount/3 is undefined (module Phoenix.LiveViewTest.Support.HooksLive.OwnMount is not available or is yet to be defined)
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L34
Phoenix.LiveViewTest.Support.InnerLive.mount/3 is undefined (module Phoenix.LiveViewTest.Support.InnerLive is not available or is yet to be defined)
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L71
Phoenix.LiveViewTest.Support.NoSuffix.mount/3 is undefined (module Phoenix.LiveViewTest.Support.NoSuffix is not available or is yet to be defined)
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L70
Phoenix.LiveViewTest.Support.Phoenix.LiveViewTest.Support.Live.Nested.Module.mount/3 is undefined (module Phoenix.LiveViewTest.Support.Phoenix.LiveViewTest.Support.Live.Nested.Module is not available or is yet to be defined)
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L157
Phoenix.LiveViewTest.Support.ClassListLive.mount/3 is undefined or private
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L119
Phoenix.LiveViewTest.Support.HooksLive.HaltMount.mount/3 is undefined or private
mix test (OTP 24.3 | Elixir 1.13.4): test/support/router.ex#L125
Phoenix.LiveViewTest.Support.HooksLive.OnMountOptions.mount/3 is undefined or private
Slow Test: test/e2e/[webkit] › tests/forms.spec.js#L1
test/e2e/[webkit] › tests/forms.spec.js took 31.2s
Slow Test: test/e2e/[webkit] › tests/streams.spec.js#L1
test/e2e/[webkit] › tests/streams.spec.js took 26.2s
Slow Test: test/e2e/[firefox] › tests/forms.spec.js#L1
test/e2e/[firefox] › tests/forms.spec.js took 24.4s
Slow Test: test/e2e/[firefox] › tests/streams.spec.js#L1
test/e2e/[firefox] › tests/streams.spec.js took 20.6s
Slow Test: test/e2e/[chromium] › tests/forms.spec.js#L1
test/e2e/[chromium] › tests/forms.spec.js took 16.1s
🎭 Playwright Run Summary
3 failed [chromium] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket [firefox] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket [webkit] › tests/navigation.spec.js:20:1 › can navigate between LiveViews in the same live session over websocket 288 passed (2.7m)

Artifacts

Produced during runtime
Name Size
e2e-test-results Expired
5.72 MB
js-unit-coverage Expired
750 KB
mix-e2e-coverage Expired
84.2 KB
mix-test-coverage-24.3-1.13.4 Expired
136 KB
mix-test-coverage-25.3-1.15.4 Expired
139 KB
mix-test-coverage-26.2-1.16.3 Expired
136 KB
playwright-report Expired
2.04 MB