@qavajs/steps-wdio
Version:
qavajs steps to interact with webdriverio
68 lines • 2.21 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const utils_1 = require("./utils");
const core_1 = require("@qavajs/core");
/**
* Hover over element
* @param {string} alias - element to hover over
* @example I hover over 'Google Button'
*/
(0, core_1.When)('I hover over {wdioLocator}', async function (element) {
await element().moveTo();
utils_1.virtualPointer.hover(await element().getElement());
});
/**
* Press mouse button
* @param {string} button - button to press (left, right, middle)
* @example When I press left mouse button
*/
(0, core_1.When)('I press {wdioMouseButton} mouse button', async function (button) {
await this.wdio.browser
.action('pointer')
.move({ ...utils_1.virtualPointer.pointer() })
.down(button)
.perform(true);
});
/**
* Release mouse button
* @param {string} button - button to release (left, right, middle)
* @example When I release left mouse button
*/
(0, core_1.When)('I release {wdioMouseButton} mouse button', async function (button) {
await this.wdio.browser
.action('pointer')
.move({ ...utils_1.virtualPointer.pointer() })
.up(button)
.perform(true);
});
/**
* Move mouse to coordinates
* @param {string} coords - x, y coordinates to move
* @example When I move mouse to '10, 15'
*/
(0, core_1.When)('I move mouse to {value}', async function (coords) {
const [x, y] = (0, utils_1.parseCoords)(await coords.value());
utils_1.virtualPointer.move(x, y);
await this.wdio.browser
.action('pointer')
.move({ ...utils_1.virtualPointer.pointer() })
.perform(true);
});
/**
* Scroll mouse wheel by x, y offset
* @param {string} coords - x, y offset to scroll
* @example When I scroll mouse wheel by '0, 15'
*/
(0, core_1.When)('I scroll mouse wheel by {value}', async function (offset) {
const [deltaX, deltaY] = (0, utils_1.parseCoords)(await offset.value());
await this.wdio.browser
.action('wheel')
.scroll({
deltaX,
deltaY,
duration: 100,
...utils_1.virtualPointer.wheel()
})
.perform(true);
});
//# sourceMappingURL=mouseActions.js.map
;