diff --git a/tools/playwright/package-lock.json b/tools/playwright/package-lock.json index fb8c876..74886f6 100644 --- a/tools/playwright/package-lock.json +++ b/tools/playwright/package-lock.json @@ -1,12 +1,12 @@ { "name": "abledom-playwright", - "version": "0.0.18", + "version": "0.0.19", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "abledom-playwright", - "version": "0.0.18", + "version": "0.0.19", "license": "MIT", "devDependencies": { "@eslint/js": "^9.39.2", diff --git a/tools/playwright/package.json b/tools/playwright/package.json index 2816be8..5149600 100644 --- a/tools/playwright/package.json +++ b/tools/playwright/package.json @@ -1,6 +1,6 @@ { "name": "abledom-playwright", - "version": "0.0.18", + "version": "0.0.19", "description": "AbleDOM tools for Playwright", "author": "Marat Abdullin ", "license": "MIT", diff --git a/tools/playwright/src/page-injector.ts b/tools/playwright/src/page-injector.ts index 33a4e68..976f8f8 100644 --- a/tools/playwright/src/page-injector.ts +++ b/tools/playwright/src/page-injector.ts @@ -141,7 +141,10 @@ export async function attachAbleDOMMethodsToPage( if (!locatorProto.__locatorIsMonkeyPatchedWithAbleDOM) { locatorProto.__locatorIsMonkeyPatchedWithAbleDOM = true; - const reportAbleDOMIssues = async (self: Locator) => { + const reportAbleDOMIssues = async ( + self: Locator, + timeoutOverride?: number, + ) => { const currentPage = self.page(); // Skip if the page is already closed @@ -152,8 +155,11 @@ export async function attachAbleDOMMethodsToPage( // Get options from the page object const pageMarkAsRead = (currentPage as unknown as Record) .__abledomMarkAsRead as boolean | undefined; - const pageTimeout = (currentPage as unknown as Record) - .__abledomTimeout as number | undefined; + const pageTimeout = + timeoutOverride === undefined + ? ((currentPage as unknown as Record) + .__abledomTimeout as number | undefined) + : timeoutOverride; let result: { hasInstance: boolean; @@ -296,7 +302,7 @@ export async function attachAbleDOMMethodsToPage( (locatorProto as unknown as LocatorProtoWithActions)[action] = async function (this: Locator, ...args: unknown[]) { const ret = await originalAction.apply(this, args); - await reportAbleDOMIssues(this); + await reportAbleDOMIssues(this, 0); // Setting the timeout for actions to 0 to avoid side effects. return ret; }; }