Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 14 additions & 23 deletions src/actions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1051,7 +1051,7 @@ async function handleContent(

let html: string;
if (command.selector) {
html = await page.locator(command.selector).innerHTML();
html = await browser.getLocator(command.selector).innerHTML();
} else {
html = await page.content();
}
Expand Down Expand Up @@ -1609,17 +1609,15 @@ async function handleIsChecked(
}

async function handleCount(command: CountCommand, browser: BrowserManager): Promise<Response> {
const page = browser.getPage();
const count = await page.locator(command.selector).count();
const count = await browser.getLocator(command.selector).count();
return successResponse(command.id, { count });
}

async function handleBoundingBox(
command: BoundingBoxCommand,
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
const box = await page.locator(command.selector).boundingBox();
const box = await browser.getLocator(command.selector).boundingBox();
return successResponse(command.id, { box });
}

Expand Down Expand Up @@ -2014,8 +2012,7 @@ async function handleWheel(command: WheelCommand, browser: BrowserManager): Prom
const page = browser.getPage();

if (command.selector) {
const element = page.locator(command.selector);
await element.hover();
await browser.getLocator(command.selector).hover();
}

await page.mouse.wheel(command.deltaX ?? 0, command.deltaY ?? 0);
Expand Down Expand Up @@ -2054,22 +2051,20 @@ async function handleHighlight(
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
await page.locator(command.selector).highlight();
await browser.getLocator(command.selector).highlight();
return successResponse(command.id, { highlighted: true });
}

async function handleClear(command: ClearCommand, browser: BrowserManager): Promise<Response> {
const page = browser.getPage();
await page.locator(command.selector).clear();
await browser.getLocator(command.selector).clear();
return successResponse(command.id, { cleared: true });
}

async function handleSelectAll(
command: SelectAllCommand,
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
await page.locator(command.selector).selectText();
await browser.getLocator(command.selector).selectText();
return successResponse(command.id, { selected: true });
}

Expand All @@ -2078,7 +2073,7 @@ async function handleInnerText(
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
const text = await page.locator(command.selector).innerText();
const text = await browser.getLocator(command.selector).innerText();
return successResponse(command.id, { text });
}

Expand All @@ -2087,7 +2082,7 @@ async function handleInnerHtml(
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
const html = await page.locator(command.selector).innerHTML();
const html = await browser.getLocator(command.selector).innerHTML();
return successResponse(command.id, { html, origin: page.url() });
}

Expand All @@ -2105,17 +2100,15 @@ async function handleSetValue(
command: SetValueCommand,
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
await page.locator(command.selector).fill(command.value);
await browser.getLocator(command.selector).fill(command.value);
return successResponse(command.id, { set: true });
}

async function handleDispatch(
command: DispatchEventCommand,
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
await page.locator(command.selector).dispatchEvent(command.event, command.eventInit);
await browser.getLocator(command.selector).dispatchEvent(command.event, command.eventInit);
return successResponse(command.id, { dispatched: command.event });
}

Expand Down Expand Up @@ -2265,8 +2258,7 @@ async function handleGetByTestId(
}

async function handleNth(command: NthCommand, browser: BrowserManager): Promise<Response> {
const page = browser.getPage();
const base = page.locator(command.selector);
const base = browser.getLocator(command.selector);
const locator = command.index === -1 ? base.last() : base.nth(command.index);

switch (command.subaction) {
Expand Down Expand Up @@ -2433,8 +2425,7 @@ async function handleMultiSelect(
command: MultiSelectCommand,
browser: BrowserManager
): Promise<Response> {
const page = browser.getPage();
const selected = await page.locator(command.selector).selectOption(command.values);
const selected = await browser.getLocator(command.selector).selectOption(command.values);
return successResponse(command.id, { selected });
}

Expand Down Expand Up @@ -2643,7 +2634,7 @@ async function handleDiffScreenshot(
const page = browser.getPage();
let screenshotBuffer: Buffer;
if (command.selector) {
const locator = browser.getLocatorFromRef(command.selector) || page.locator(command.selector);
const locator = browser.getLocator(command.selector);
screenshotBuffer = await locator.screenshot({ type: 'png' });
} else {
screenshotBuffer = await page.screenshot({ fullPage: command.fullPage, type: 'png' });
Expand Down