test(e2e): run the net on WebKit and an iPad profile; opt the account out of Home
The Playwright net now runs every flow in three projects: chromium (Desktop Chrome), webkit (Desktop Safari) and ipad (iPad gen 7 landscape: touch, mobile viewport). WebKit catches the engine-level differences every iOS browser inherits; the config and the README say plainly what it does NOT catch: iPad media refusals. Playwright's WebKit decodes through the host OS, and on Windows it played an mp3-in-mp4 and an AV1 mp4 that a real iPad refuses, so media formats are checked on a real iPad against the dev stack over the LAN. global.setup opts the e2e account out of starting on Home (the Startup setting), which the feed, channel and player specs need since E24. It only takes effect with the new-tab boot fix: before it, all twelve of those specs landed on Home in every project. 49/49 green on :8080 across the three projects.
This commit is contained in:
@@ -47,5 +47,19 @@ export default defineConfig({
|
||||
use: { ...devices["Desktop Chrome"], storageState: STORAGE_STATE },
|
||||
dependencies: ["setup"],
|
||||
},
|
||||
// WebKit catches engine-level differences (JS, CSS/layout, event order) that every iOS browser
|
||||
// inherits. It does NOT reproduce iPad MEDIA refusals: Playwright's WebKit decodes through the
|
||||
// host OS (Media Foundation on Windows, GStreamer on Linux), and measured on 2026-09-14 it played
|
||||
// an mp3-in-mp4 and an AV1 mp4 that iPad refuses. Media checks need a real iPad.
|
||||
{
|
||||
name: "webkit",
|
||||
use: { ...devices["Desktop Safari"], storageState: STORAGE_STATE },
|
||||
dependencies: ["setup"],
|
||||
},
|
||||
{
|
||||
name: "ipad",
|
||||
use: { ...devices["iPad (gen 7) landscape"], storageState: STORAGE_STATE },
|
||||
dependencies: ["setup"],
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user