mirror of
https://github.com/vitest-dev/vitest.git
synced 2025-12-08 18:26:03 +00:00
24 lines
798 B
TypeScript
24 lines
798 B
TypeScript
import type { UserEvent } from '../../../context'
|
|
import type { UserEventCommand } from './utils'
|
|
import { PlaywrightBrowserProvider } from '../providers/playwright'
|
|
import { WebdriverBrowserProvider } from '../providers/webdriverio'
|
|
|
|
export const clear: UserEventCommand<UserEvent['clear']> = async (
|
|
context,
|
|
selector,
|
|
) => {
|
|
if (context.provider instanceof PlaywrightBrowserProvider) {
|
|
const { iframe } = context
|
|
const element = iframe.locator(selector)
|
|
await element.clear()
|
|
}
|
|
else if (context.provider instanceof WebdriverBrowserProvider) {
|
|
const browser = context.browser
|
|
const element = await browser.$(selector)
|
|
await element.clearValue()
|
|
}
|
|
else {
|
|
throw new TypeError(`Provider "${context.provider.name}" does not support clearing elements`)
|
|
}
|
|
}
|