Skip to content

Commit b7255d4

Browse files
fix(video-player-web): ensure video widget is scrolled into view and wait for data readiness
1 parent a376335 commit b7255d4

1 file changed

Lines changed: 3 additions & 10 deletions

File tree

packages/pluggableWidgets/video-player-web/e2e/VideoPlayer.spec.js

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { test, expect } from "@mendix/run-e2e/fixtures";
2+
import { waitForDataReady } from "@mendix/run-e2e/mendix-helpers";
23

34
test.describe("Video Player", () => {
45
test.beforeEach(async ({ page }) => {
@@ -108,18 +109,10 @@ test.describe("External video", () => {
108109
test("renders a poster", async ({ page }) => {
109110
const widget = page.locator(".widget-video-player");
110111
const videoLocator = page.locator(".widget-video-player video");
112+
await widget.scrollIntoViewIfNeeded();
111113
await expect(widget).toBeVisible();
112114
await expect(videoLocator).toHaveAttribute("poster", /.+/);
113-
const posterUrl = await videoLocator.getAttribute("poster");
114-
await page.evaluate(url => {
115-
return new Promise(resolve => {
116-
const img = new Image();
117-
img.onload = () => resolve(undefined);
118-
img.onerror = () => resolve(undefined);
119-
img.src = url;
120-
if (img.complete && img.naturalWidth !== 0) resolve(undefined);
121-
});
122-
}, posterUrl);
115+
await waitForDataReady(page);
123116
await expect(widget).toHaveScreenshot("videoPlayerExternalPoster.png");
124117
});
125118

0 commit comments

Comments
 (0)