diff --git a/js/e2e-web/README.md b/js/e2e-web/README.md index 965ffeb1f..2b8a2e3a9 100644 --- a/js/e2e-web/README.md +++ b/js/e2e-web/README.md @@ -62,7 +62,9 @@ image uploads are already limited to the web. `stream` also covers the narrow portrait web layout at 320 × 568, where the live video sits above chat. It reveals the player chrome, exercises mute and fullscreen entry/exit, and verifies that faded controls reveal instead of -accepting an unseen tap. +accepting an unseen tap. Its readiness check uses the video itself: accumulated +chat history can virtualize the stream's initial system message, so that row is +not a reliable player prerequisite. `player-breakpoints` exercises live playback at 23 widths in portrait and landscape, including 1080 × 722 and immediately below, at, and above the theme diff --git a/js/e2e-web/flows/chat-timezone.spec.ts b/js/e2e-web/flows/chat-timezone.spec.ts index 849d02203..fc8459a29 100644 --- a/js/e2e-web/flows/chat-timezone.spec.ts +++ b/js/e2e-web/flows/chat-timezone.spec.ts @@ -1,6 +1,8 @@ import { expect, test } from "@playwright/test"; import { loginThroughPds } from "./login"; +// Native counterpart: .maestro/logged-in/chat-timezone.yaml checks the +// sending device's offset against the actual record stored by the PDS. const HTTPS_URL = process.env.SERVER_HTTPS_URL; test.skip(!HTTPS_URL, "harness started without its HTTPS hostnames"); diff --git a/js/e2e-web/flows/stream.spec.ts b/js/e2e-web/flows/stream.spec.ts index e184cf7d2..293682b60 100644 --- a/js/e2e-web/flows/stream.spec.ts +++ b/js/e2e-web/flows/stream.spec.ts @@ -27,10 +27,9 @@ test("stream: portrait player exposes playback controls", async ({ page }) => { const card = page.getByTestId("home-stream-card").first(); await expect(card).toBeVisible({ timeout: 30_000 }); await card.click(); - await expect( - page.getByText("Now streaming - e2e test stream").first(), - ).toBeVisible({ timeout: 30_000 }); + // Chat may virtualize its initial system message once history fills up. + // Playback controls depend on the player being ready, not that chat row. const video = page.locator("video").first(); await expect(video).toBeVisible({ timeout: 30_000 }); const videoBox = await video.boundingBox();