fix: stabilize registration and E2E service workers

This commit is contained in:
SimpleTest 2026-07-19 19:27:03 +03:00
parent 9bf513cc06
commit 44865635e4
4 changed files with 14 additions and 2 deletions

View File

@ -61,7 +61,11 @@ liveSocket.connect()
window.liveSocket = liveSocket
if ("serviceWorker" in navigator) {
window.addEventListener("load", () => navigator.serviceWorker.register("/sw.js"))
window.addEventListener("load", () => {
navigator.serviceWorker.register("/sw.js").catch(error => {
console.warn("Service worker registration failed", error)
})
})
}
// The lines below enable quality of life phoenix_live_reload

View File

@ -25,6 +25,10 @@ export default defineConfig({
use: {
baseURL,
ignoreHTTPSErrors: true,
// The isolated E2E proxy uses a generated self-signed certificate. Browser
// page requests honor ignoreHTTPSErrors, but Chromium's service-worker
// fetch does not. Static delivery is covered by the backend suite.
serviceWorkers: "block",
actionTimeout: 10_000,
navigationTimeout: 20_000,
trace: "retain-on-failure",

View File

@ -26,7 +26,6 @@
autocomplete="username"
spellcheck="false"
required
phx-mounted={JS.focus()}
/>
<.input

View File

@ -32,4 +32,9 @@ defmodule WhoNeedHelpWeb.PageControllerTest do
conn = get(conn, "/manifest.webmanifest")
assert response(conn, 200) =~ ~s("short_name": "Who Need Help")
end
test "GET /sw.js", %{conn: conn} do
conn = get(conn, "/sw.js")
assert response(conn, 200) =~ ~s(const CACHE = "who-need-help-static-v1")
end
end