Skip to content

Commit 0878548

Browse files
test(wheel): add test for scrolling while emulating mobile (microsoft#10224)
1 parent 6d3bb45 commit 0878548

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

Diff for: tests/page/wheel.spec.ts

+16
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
*/
1616
import type { Page } from 'playwright-core';
1717
import { test as it, expect } from './pageTest';
18+
import { contextTest } from '../config/browserTest';
19+
1820
it.skip(({ isElectron, browserMajorVersion }) => {
1921
// Old Electron has flaky wheel events.
2022
return isElectron && browserMajorVersion <= 11;
@@ -108,6 +110,20 @@ it('should work when the event is canceled', async ({ page }) => {
108110
expect(await page.evaluate('window.scrollY')).toBe(0);
109111
});
110112

113+
contextTest('should scroll when emulating a mobile viewport', async ({ contextFactory, server, browserName }) => {
114+
contextTest.skip(browserName === 'firefox');
115+
contextTest.fixme(browserName === 'webkit');
116+
const context = await contextFactory({
117+
viewport: { 'width': 1000, 'height': 600 },
118+
isMobile: true,
119+
});
120+
const page = await context.newPage();
121+
await page.goto(server.PREFIX + '/input/scrollable.html');
122+
await page.mouse.move(50, 60);
123+
await page.mouse.wheel(0, 100);
124+
await page.waitForFunction('window.scrollY === 100');
125+
});
126+
111127
async function listenForWheelEvents(page: Page, selector: string) {
112128
await page.evaluate(selector => {
113129
document.querySelector(selector).addEventListener('wheel', (e: WheelEvent) => {

0 commit comments

Comments
 (0)