UNPKG

e2ed

Version:

E2E testing framework over Playwright

48 lines (47 loc) 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.pressKey = void 0; const useContext_1 = require("../useContext"); const error_1 = require("../utils/error"); const log_1 = require("../utils/log"); /** * Presses the specified keyboard keys. */ const pressKey = async (keyOrSelector, keyOrOptions, maybeOptions) => { let key; let selector; let options; if (typeof keyOrSelector === 'string') { key = keyOrSelector; if (typeof keyOrOptions === 'string') { throw new error_1.E2edError('keyOrOptions is string', { keyOrOptions, keyOrSelector, maybeOptions, }); } options = keyOrOptions ?? {}; } else { selector = keyOrSelector; if (typeof keyOrOptions !== 'string') { throw new error_1.E2edError('keyOrOptions is not string', { keyOrOptions, keyOrSelector, maybeOptions, }); } key = keyOrOptions; options = maybeOptions ?? {}; } const withDescription = selector !== undefined ? ` on element ${selector.description}` : ''; (0, log_1.log)(`Press keyboard key${withDescription}: "${key}"`, options, 5 /* LogEventType.InternalAction */); const page = (0, useContext_1.getPlaywrightPage)(); if (selector !== undefined) { await selector.getPlaywrightLocator().press(key, options); } else { await page.keyboard.press(key, options); } }; exports.pressKey = pressKey;