e2ed
Version:
E2E testing framework over Playwright
48 lines (47 loc) • 1.58 kB
JavaScript
;
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;