From dabaa6dd10d357b1f37cb31e4b2a1800d290a6d3 Mon Sep 17 00:00:00 2001 From: Joan Perals Tresserra Date: Fri, 31 Jul 2026 07:33:17 +0200 Subject: [PATCH 1/5] feat: add doubleClick and scrollIntoView to screenshot base page object --- src/page-objects/screenshot-base.ts | 10 ++++++++++ test/fixtures/test-page-object.html | 10 ++++++++++ test/screenshot-page-object.test.ts | 18 ++++++++++++++++++ 3 files changed, 38 insertions(+) diff --git a/src/page-objects/screenshot-base.ts b/src/page-objects/screenshot-base.ts index dce2e6a..5a0f331 100644 --- a/src/page-objects/screenshot-base.ts +++ b/src/page-objects/screenshot-base.ts @@ -17,6 +17,11 @@ export default class ScreenshotBasePageObject extends BasePageObject { return this.keys('Tab'); } + async doubleClick(selector: string): Promise { + const element = this.browser.$(selector); + await element.doubleClick(); + } + async scrollToBottom(selector: string) { const action: ScrollAction = 'scrollToBottom'; await this.browser.execute(scrollAction, { action, selector }); @@ -27,6 +32,11 @@ export default class ScreenshotBasePageObject extends BasePageObject { await this.browser.execute(scrollAction, { action, selector }); } + async scrollIntoView(selector: string): Promise { + const element = this.browser.$(selector); + await element.scrollIntoView(); + } + async fullPageScreenshot() { // preserve scroll position in order to avoid side effects after screenshot taking const scrollPosition = await this.getWindowScroll(); diff --git a/test/fixtures/test-page-object.html b/test/fixtures/test-page-object.html index 6199734..def320d 100644 --- a/test/fixtures/test-page-object.html +++ b/test/fixtures/test-page-object.html @@ -50,6 +50,8 @@

Some text

+

I am far below the fold

+