promod 0.0.26 → 0.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -219,6 +219,11 @@ class Browser {
219
219
  return executeScriptArgs;
220
220
  }
221
221
  async quit() {
222
+ if (this.drivers && this.drivers.length) {
223
+ const index = this.drivers.findIndex((driver) => driver === this.seleniumDriver);
224
+ if (index !== -1)
225
+ this.drivers.splice(index, 1);
226
+ }
222
227
  await this.seleniumDriver.quit();
223
228
  this.seleniumDriver = null;
224
229
  }
@@ -238,11 +243,6 @@ class Browser {
238
243
  }
239
244
  }
240
245
  async close() {
241
- if (this.drivers.length) {
242
- const index = this.drivers.findIndex((driver) => driver === this.seleniumDriver);
243
- if (index !== -1)
244
- this.drivers.splice(index, 1);
245
- }
246
246
  await this.seleniumDriver.close();
247
247
  }
248
248
  actions() {
@@ -1 +1 @@
1
- {"version":3,"file":"swd_client.js","sourceRoot":"","sources":["../../lib/swd/swd_client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swd_client.js","sourceRoot":"","sources":["../../lib/swd/swd_client.ts"],"names":[],"mappings":"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"}
@@ -193,11 +193,7 @@ class PromodSeleniumElement {
193
193
  * const buttonIsDisplayed = await button.isDisplayed();
194
194
  */
195
195
  async isDisplayed() {
196
- const result = await this.getElement().catch(() => false);
197
- if (sat_utils_1.isBoolean(result) && !result) {
198
- return false;
199
- }
200
- return this.wdElement.isDisplayed().then((res) => res, () => false);
196
+ return this.getElement().then(() => this.wdElement.isDisplayed()).catch(() => false);
201
197
  }
202
198
  /**
203
199
  * @returns {Promise<boolean>} button is present
@@ -1 +1 @@
1
- {"version":3,"file":"swd_element.js","sourceRoot":"","sources":["../../lib/swd/swd_element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swd_element.js","sourceRoot":"","sources":["../../lib/swd/swd_element.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "promod",
3
- "version": "0.0.26",
3
+ "version": "0.0.30",
4
4
  "description": "Library for automation testing",
5
5
  "main": "./built/index.js",
6
6
  "scripts": {
@@ -48,8 +48,8 @@
48
48
  ],
49
49
  "dependencies": {
50
50
  "@types/selenium-webdriver": "^4.0.15",
51
- "sat-utils": "0.0.17",
51
+ "sat-utils": "^0.0.25",
52
52
  "selenium-standalone": "^7.1.0",
53
- "selenium-webdriver": "^4.0.0-rc-1"
53
+ "selenium-webdriver": "^4.0.0"
54
54
  }
55
55
  }
@@ -1,3 +1,4 @@
1
+ import {By, WebDriver, until, Key} from 'selenium-webdriver';
1
2
  import {expect} from 'assertior';
2
3
  import {seleniumWD} from '../lib/index';
3
4
 
@@ -5,7 +6,7 @@ describe('Base', () => {
5
6
  const {$, $$, getSeleniumDriver, browser} = seleniumWD;
6
7
 
7
8
  beforeEach(async () => {
8
- await getSeleniumDriver({seleniumAddress: 'http://localhost:4444/wd/hub'}, browser);
9
+ await getSeleniumDriver(browser);
9
10
  await browser.get('http://localhost:4000/');
10
11
  });
11
12
 
@@ -13,6 +14,13 @@ describe('Base', () => {
13
14
  await browser.quitAll();
14
15
  });
15
16
 
17
+ it('isDisplayed', async () => {
18
+ const email = $('input[placeholder="Ім\'я lol"]');
19
+
20
+ expect(await email.isDisplayed()).toEqual(false);
21
+ expect(await email.isPresent()).toEqual(false);
22
+ });
23
+
16
24
  it('several browsers', async () => {
17
25
  const email = $('input[placeholder="Ім\'я користувача"]');
18
26
  const pass = $('input[placeholder="пароль"]');
@@ -36,12 +44,13 @@ describe('Base', () => {
36
44
  expect(await pass.isDisplayed()).toEqual(true);
37
45
  });
38
46
 
39
- it('element click/sendKeys', async () => {
47
+ it.only('element click/sendKeys', async () => {
40
48
  const email = $('input[placeholder="Ім\'я користувача"]');
41
49
  const pass = $('input[placeholder="пароль"]');
42
50
  const signIn = $('.login_form .btn-primary');
43
- await email.sendKeys('admin');
44
- await pass.sendKeys('admin');
51
+ await browser.actions().keyDown(Key.SHIFT).perform();
52
+ await email.sendKeys(`${Key.SHIFT}a`);
53
+ await browser.sleep(12000);
45
54
  await signIn.click(true);
46
55
  });
47
56
 
package/lib/index.ts DELETED
@@ -1,5 +0,0 @@
1
- export * from './swd';
2
- export * from './swd/config';
3
- // for types
4
- export {PromodSeleniumElementType, PromodSeleniumElementsType} from './swd/swd_element';
5
- export {Browser} from './swd/swd_client';
@@ -1,51 +0,0 @@
1
- import {isString, isUndefined} from 'sat-utils';
2
- import * as fs from 'fs';
3
-
4
- const checkPathes = ['seleniumServerJar', 'chromeDriver', 'geckoDriver'];
5
- const checkString = ['seleniumAddress', 'seleniumSessionId', 'baseUrl'];
6
-
7
- export type BaseConf = {
8
- [key: string]: any;
9
- localSeleniumStandaloneOpts?: {
10
- port?: number | string;
11
- args?: string[];
12
- jvmArgs?: string[];
13
- };
14
- // Selenium drivers options
15
- seleniumServerJar?: string;
16
- chromeDriver?: string;
17
- geckoDriver?: string;
18
-
19
- seleniumAddress?: string;
20
- seleniumSessionId?: string;
21
- // Browser capabilities
22
- capabilities?: {
23
- [key: string]: any;
24
- browserName?: string;
25
- };
26
- // Opts
27
- baseUrl?: string;
28
- }
29
-
30
- function validateSeleniumConf(configObj: BaseConf) {
31
- const configKeys = Object.keys(configObj);
32
- for (const key of configKeys) {
33
- if ((checkPathes.includes(key) || checkString.includes(key)) && (!isString(configObj[key]) && !isUndefined(configObj[key]))) {
34
- throw new TypeError(`
35
- config: ${key} value should be a string,
36
- please use BaseConf type or visit https://github.com/Simple-Automation-Testing/promod/blob/master/lib/swd/config/config.ts
37
- `);
38
- }
39
-
40
- if (checkPathes.includes(key) && (!isUndefined(configObj[key]) && isString(configObj[key]) && !fs.existsSync(configObj[key]))) {
41
- throw new TypeError(`
42
- config: ${key} ${configObj[key]} file does not exist
43
- please use BaseConf type or visit https://github.com/Simple-Automation-Testing/promod/blob/master/lib/swd/config/config.ts
44
- `);
45
- }
46
- }
47
- }
48
-
49
- export {
50
- validateSeleniumConf
51
- };
@@ -1 +0,0 @@
1
- export * from './config';
@@ -1,42 +0,0 @@
1
- import {WebDriver} from 'selenium-webdriver';
2
- import {getDriver} from './remote';
3
- import {BaseConf} from '../config/config';
4
- import {Browser} from '../swd_client';
5
- import {validateSeleniumConf} from '../config';
6
-
7
- async function getSeleniumDriver(config: BaseConf | Browser = {}, browser?: Browser): Promise<WebDriver> {
8
- let _config;
9
- let _browser;
10
-
11
- if (config instanceof Browser && arguments.length === 1) {
12
- _browser = config;
13
- _config = {};
14
- } else {
15
- _browser = browser;
16
- _config = config;
17
- }
18
-
19
- // validate config
20
- validateSeleniumConf(_config);
21
-
22
- const driver = await getDriver(_config);
23
-
24
- /**
25
- * @info
26
- * init creations of the new driver
27
- * and init current driver
28
- */
29
-
30
- _browser.setCreateNewDriver = () => getDriver(_config);
31
- _browser.setClient(driver);
32
-
33
- if (config.baseUrl) {
34
- _browser.baseUrl = config.baseUrl;
35
- }
36
-
37
- return driver;
38
- }
39
-
40
- export {
41
- getSeleniumDriver
42
- };
@@ -1,142 +0,0 @@
1
- import * as fs from 'fs';
2
- import * as computeFsPaths from 'selenium-standalone/lib/compute-fs-paths';
3
- import * as standAloneDefaultConfig from 'selenium-standalone/lib/default-config';
4
-
5
- import {SeleniumServer} from 'selenium-webdriver/remote';
6
-
7
- function getOptsData(opts: {[k: string]: any} = {}) {
8
- const defaultConfig = standAloneDefaultConfig();
9
-
10
- if (!opts.version) {
11
- opts.version = defaultConfig.version;
12
- }
13
-
14
- if (opts.drivers) {
15
- opts.drivers = Object.keys(opts.drivers).reduce((config, driverName) => {
16
- config[driverName] = Object.assign({}, defaultConfig.drivers[driverName], opts.drivers[driverName]);
17
- return config;
18
- }, {});
19
- } else {
20
- opts.drivers = defaultConfig.drivers;
21
- }
22
-
23
- const fsPaths = computeFsPaths({
24
- seleniumVersion: opts.version,
25
- drivers: opts.drivers,
26
- basePath: opts.basePath,
27
- });
28
- return fsPaths;
29
- }
30
-
31
- const throwInstructionError = (additional = '') => {
32
- throw new Error(`${additional}Run 'selenium-standalone install' to download browser drivers and selenium standalone server.`);
33
- };
34
-
35
- const checkIfUpdateRequired = (driverName, opts) => {
36
- if (driverName === 'selenium') {
37
- if (!fs.existsSync(getOptsData(opts).selenium.installPath)) {
38
- throwInstructionError();
39
- }
40
- }
41
-
42
- if (driverName === 'chrome') {
43
- if (!fs.existsSync(getOptsData(opts).chrome.installPath)) {
44
- throwInstructionError();
45
- }
46
- }
47
-
48
- if (driverName === 'firefox') {
49
- if (!fs.existsSync(getOptsData(opts).firefox.installPath)) {
50
- throwInstructionError();
51
- }
52
- }
53
- };
54
-
55
- const checkIfDriverOrServerExists = (pathTo) => {
56
- if (!fs.existsSync(pathTo)) {
57
- throwInstructionError(`${pathTo} does not exists \n`);
58
- }
59
- };
60
-
61
- const getCombinedConfig = (config: any = {}) => {
62
- const combinedConfig = config;
63
-
64
- if (!config.seleniumServerStartTimeout) {
65
- config.seleniumServerStartTimeout = 30000;
66
- }
67
-
68
- combinedConfig.capabilities =
69
- combinedConfig.capabilities.map_ instanceof Map
70
- ? Object.fromEntries(combinedConfig.capabilities.map_)
71
- : combinedConfig.capabilities;
72
-
73
- if (!combinedConfig.seleniumServerJar) {
74
- checkIfUpdateRequired('selenium', config.selenium);
75
- const pathToServer = getOptsData(config.selenium).selenium.installPath;
76
-
77
- checkIfDriverOrServerExists(pathToServer);
78
- combinedConfig.seleniumServerJar = pathToServer;
79
- }
80
-
81
- if (!combinedConfig.chromeDriver && combinedConfig.capabilities.browserName === 'chrome') {
82
- checkIfUpdateRequired('chrome', config.selenium);
83
- const pathToChromedriver = getOptsData(config.selenium).chrome.installPath;
84
-
85
- checkIfDriverOrServerExists(pathToChromedriver);
86
- combinedConfig.chromeDriver = pathToChromedriver;
87
- }
88
-
89
- if (!combinedConfig.geckoDriver && combinedConfig.capabilities.browserName === 'firefox') {
90
- checkIfUpdateRequired('firefox', config.selenium);
91
- const pathTogeckoDriver = getOptsData(config.selenium).firefox.installPath;
92
-
93
- checkIfDriverOrServerExists(pathTogeckoDriver);
94
- combinedConfig.geckoDriver = pathTogeckoDriver;
95
- }
96
-
97
- return combinedConfig;
98
- };
99
-
100
- const runLocalEnv = async (config) => {
101
- if (config.seleniumAddress) {
102
- return config;
103
- }
104
- const combinedConfig = getCombinedConfig(config);
105
-
106
- const serverConf = combinedConfig.localSeleniumStandaloneOpts || {};
107
-
108
- if (!serverConf.args) {
109
- serverConf.args = combinedConfig.seleniumArgs || [];
110
- }
111
- if (!serverConf.jvmArgs) {
112
- serverConf.jvmArgs = combinedConfig.jvmArgs || [];
113
- } else if (!Array.isArray(serverConf.jvmArgs)) {
114
- throw new TypeError('jvmArgs should be an array.');
115
- }
116
- if (!serverConf.port) {
117
- serverConf.port = combinedConfig.seleniumPort;
118
- }
119
-
120
- if (combinedConfig.chromeDriver) {
121
- serverConf.jvmArgs.push(`-Dwebdriver.chrome.driver=${combinedConfig.chromeDriver}`);
122
- }
123
- if (combinedConfig.geckoDriver) {
124
- serverConf.jvmArgs.push(`-Dwebdriver.gecko.driver=${combinedConfig.geckoDriver}`);
125
- }
126
-
127
- const server = new SeleniumServer(combinedConfig.seleniumServerJar, serverConf);
128
-
129
- await server.start(combinedConfig.seleniumServerStartTimeout);
130
-
131
- const address = await server.address();
132
-
133
- return {
134
- server,
135
- seleniumAddress: address,
136
- capabilities: combinedConfig.capabilities,
137
- };
138
- };
139
-
140
- export {
141
- runLocalEnv,
142
- };
@@ -1,35 +0,0 @@
1
- import {Builder, Capabilities, WebDriver} from 'selenium-webdriver';
2
- import * as _http from 'selenium-webdriver/http';
3
-
4
- import {runLocalEnv} from './local';
5
-
6
- const getDriver = async (config) => {
7
- const combinedConfig = config || {capabilities: Capabilities.chrome()};
8
- if (!combinedConfig.capabilities) {
9
- combinedConfig.capabilities = Capabilities.chrome();
10
- }
11
-
12
- if (config.seleniumSessionId) {
13
- return await new WebDriver(
14
- config.seleniumSessionId,
15
- new _http.Executor(Promise.resolve(config.seleniumAddress)
16
- .then((url) => new _http.HttpClient(url, null, null)))
17
- );
18
- }
19
-
20
- const {
21
- seleniumAddress,
22
- capabilities = Capabilities.chrome(),
23
- } = await runLocalEnv(combinedConfig);
24
-
25
- const driver = new Builder()
26
- .usingServer(seleniumAddress)
27
- .withCapabilities(capabilities)
28
- .build();
29
-
30
- return driver;
31
- };
32
-
33
- export {
34
- getDriver,
35
- };
package/lib/swd/index.ts DELETED
@@ -1,17 +0,0 @@
1
- import {getSeleniumDriver} from './driver';
2
- import {$, $$, PromodSeleniumElement, PromodSeleniumElements, By} from './swd_element';
3
- import {browser} from './swd_client';
4
-
5
- const seleniumWD = {
6
- getSeleniumDriver,
7
- browser,
8
- $,
9
- $$,
10
- By,
11
- PromodSeleniumElement,
12
- PromodSeleniumElements,
13
- };
14
-
15
- export {
16
- seleniumWD,
17
- };
@@ -1,351 +0,0 @@
1
- import {isArray, isPromise, waitForCondition, isNumber, isAsyncFunction, isString} from 'sat-utils';
2
- import {WebDriver, Key} from 'selenium-webdriver';
3
-
4
- function validateBrowserCallMethod(browserClass): Browser {
5
- const protKeys = Object.getOwnPropertyNames(browserClass.prototype).filter((item) => item !== 'constructor');
6
- for (const key of protKeys) {
7
- const descriptor = Object.getOwnPropertyDescriptor(browserClass.prototype, key);
8
- if (isAsyncFunction(descriptor.value)) {
9
- const originalMethod: (...args: any[]) => Promise<any> = descriptor.value;
10
-
11
- // eslint-disable-next-line no-inner-declarations
12
- async function decoratedWithChecker(...args) {
13
- if (!this.seleniumDriver) {
14
- throw new Error(`
15
- ${key}(): Seems like driver was not initialized, please check how or where did you call getSeleniumDriver function
16
- or visit https://github.com/Simple-Automation-Testing/promod/blob/master/docs/init.md#getseleniumdriver
17
- `);
18
- }
19
-
20
- return originalMethod.call(this, ...args);
21
- }
22
-
23
- Object.defineProperty(decoratedWithChecker, 'name', {value: key});
24
-
25
- descriptor.value = decoratedWithChecker;
26
- Object.defineProperty(browserClass.prototype, key, descriptor);
27
- }
28
- }
29
- return new browserClass();
30
- }
31
-
32
-
33
- interface IBrowserTab {
34
- index?: number;
35
- expectedQuantity?: number;
36
- title?: string;
37
- timeout?: number;
38
- }
39
-
40
- class Browser {
41
- public wait = waitForCondition;
42
- public seleniumDriver: WebDriver;
43
- private appBaseUrl: string;
44
- private initialTab: any;
45
- private drivers: WebDriver[];
46
- private _createNewDriver: () => Promise<WebDriver>;
47
-
48
- constructor() {
49
- this.wait = waitForCondition;
50
- }
51
-
52
- currentClient() {
53
- return this.seleniumDriver;
54
- }
55
-
56
- async runNewBrowser() {
57
- if (!isArray(this.drivers)) {
58
- this.drivers = [];
59
- }
60
- this.drivers.push(this.seleniumDriver);
61
- if (!this._createNewDriver) {
62
- throw new Error('createNewDriver(): seems like create driver method was not inited');
63
- }
64
-
65
- const newDriver = await this._createNewDriver();
66
- this.drivers.push(newDriver);
67
- this.seleniumDriver = newDriver;
68
- }
69
-
70
- async switchToBrowser({index, tabTitle}: {index?: number; tabTitle?: string;} = {}) {
71
- if (isNumber(index) && isArray(this.drivers) && this.drivers.length > index) {
72
- this.seleniumDriver = this.drivers[index];
73
- return;
74
- } if (isString(tabTitle)) {
75
- for (const driver of this.drivers) {
76
- const result = await this.switchToBrowserTab({title: tabTitle}).then(() => true, () => false).catch(() => false);
77
- if (result) {
78
- this.seleniumDriver = driver;
79
- return;
80
- }
81
- }
82
- }
83
-
84
- throw new Error(`switchToBrowser(): required browser was not found`);
85
- }
86
-
87
- set setCreateNewDriver(driverCreator) {
88
- this._createNewDriver = driverCreator;
89
- }
90
-
91
- setClient(client) {
92
- this.seleniumDriver = client;
93
- }
94
-
95
-
96
- get Key() {
97
- return Key;
98
- }
99
-
100
- get baseUrl() {
101
- return this.appBaseUrl;
102
- }
103
-
104
- set baseUrl(url) {
105
- this.appBaseUrl = url;
106
- }
107
-
108
- public async returnToInitialTab() {
109
- // there was no switching in test
110
- if (!this.initialTab) {
111
- return;
112
- }
113
- await this.closeAllTabsExceptInitial();
114
- await this.switchTo().window(this.initialTab);
115
- // set initialTab to null for further "it" to use
116
- this.initialTab = null;
117
- }
118
-
119
- public async switchToTab(tabObject: IBrowserTab) {
120
- if (!this.initialTab) {
121
- this.initialTab = await this.getCurrentTab();
122
- }
123
- await this.switchToBrowserTab(tabObject);
124
- }
125
-
126
- private async closeAllTabsExceptInitial() {
127
- const handles = await this.getTabs();
128
- handles.splice(handles.indexOf(this.initialTab), 1);
129
- await this.makeActionAtEveryTab(async () => this.close(), handles);
130
- }
131
-
132
- public async makeActionAtEveryTab(action: (...args: any) => Promise<any>, handles?: string[]) {
133
- handles = handles || await this.getTabs();
134
- for (const windowHandle of handles) {
135
- await this.switchTo().window(windowHandle);
136
- await action();
137
- }
138
- }
139
-
140
- /**
141
- * switchToBrowserTab
142
- * @private
143
- */
144
- private async switchToBrowserTab(tabObject: IBrowserTab) {
145
- const {index, expectedQuantity, title, timeout = 5000} = tabObject;
146
- let tabs = await this.getTabs();
147
- if (isNumber(expectedQuantity)) {
148
- await waitForCondition(async () => {
149
- tabs = await this.getTabs();
150
- return tabs.length === expectedQuantity;
151
- },
152
- {message: `Couldn't wait for ${expectedQuantity} tab(s) to appear. Probably you should pass expectedQuantity`, timeout}
153
- );
154
- }
155
-
156
- if (tabs.length > 1) {
157
- if (title) {
158
- await waitForCondition(async () => {
159
- tabs = await this.getTabs();
160
- for (const tab of tabs) {
161
- await this.switchTo().window(tab);
162
- if (await this.getTitle() === title) {
163
- return true;
164
- }
165
- }
166
- }, {message: `Window with ${title} title was not found during ${timeout}.`, timeout});
167
- } else {
168
- await this.switchTo().window(tabs[index]);
169
- }
170
- } else {
171
- await this.switchTo().window(tabs[0]);
172
- }
173
- }
174
-
175
- async getTitle() {
176
- return await this.seleniumDriver.getTitle();
177
- }
178
-
179
- async getCurrentUrl() {
180
- return await this.seleniumDriver.getCurrentUrl();
181
- }
182
-
183
- async takeScreenshot() {
184
- return await this.seleniumDriver.takeScreenshot();
185
- }
186
-
187
- async refresh() {
188
- return await this.seleniumDriver.navigate().refresh();
189
- }
190
-
191
- async tabTitle() {
192
- return await this.seleniumDriver.getTitle();
193
- }
194
-
195
- async getTabs() {
196
- return await this.seleniumDriver.getAllWindowHandles();
197
- }
198
-
199
- async getCurrentTab() {
200
- return await this.seleniumDriver.getWindowHandle();
201
- }
202
-
203
- async get(url: string) {
204
- const getUrl = this.resolveUrl(url);
205
-
206
- return await this.seleniumDriver.get(getUrl);
207
- }
208
-
209
- async setWindowSize(width: number, height: number) {
210
- return await this.seleniumDriver.manage().window()
211
- .setRect({
212
- width,
213
- height,
214
- });
215
- }
216
-
217
- async sleep(time: number) {
218
- await (() => new Promise((resolve) => setTimeout(resolve, time)))();
219
- }
220
-
221
- manage() {
222
- return this.seleniumDriver.manage();
223
- }
224
-
225
- async executeScript(script: any, ...args: any[]): Promise<any> {
226
- const recomposedArgs = await this.toSeleniumArgs(...args);
227
- const res = await this.seleniumDriver.executeScript(script, ...recomposedArgs);
228
-
229
- return res;
230
- }
231
-
232
- async executeAsyncScript(script: any, ...args: any[]): Promise<any> {
233
- const recomposedArgs = await this.toSeleniumArgs(...args);
234
-
235
- const res = await this.seleniumDriver.executeAsyncScript(script, ...recomposedArgs);
236
-
237
- return res;
238
- }
239
-
240
- navigate() {
241
- return this.seleniumDriver.navigate();
242
- }
243
-
244
- switchTo() {
245
- return this.seleniumDriver.switchTo();
246
- }
247
-
248
- private async toSeleniumArgs(...args) {
249
- const executeScriptArgs = [];
250
-
251
- for (const item of args) {
252
- const resolvedItem = isPromise(item) ? await item : item;
253
-
254
- if (Array.isArray(resolvedItem)) {
255
- const arrayItems = [];
256
-
257
- for (const itemArr of resolvedItem) {
258
- if (item && item.getId) {
259
- const elementObj = await this.getSeleniumProtocolElement(itemArr);
260
-
261
- arrayItems.push(elementObj);
262
- } else {
263
- arrayItems.push(itemArr);
264
- }
265
- }
266
- executeScriptArgs.push(arrayItems);
267
- } else if (resolvedItem && resolvedItem.getSeleniumProtocolElementObj) {
268
- executeScriptArgs.push(await resolvedItem.getSeleniumProtocolElementObj());
269
- } else {
270
- executeScriptArgs.push(item);
271
- }
272
- }
273
-
274
- return executeScriptArgs;
275
- }
276
-
277
- async quit() {
278
- await this.seleniumDriver.quit();
279
- this.seleniumDriver = null;
280
- }
281
-
282
- async quitAll() {
283
- if (isArray(this.drivers) && this.drivers.length) {
284
- for (const driver of this.drivers) {
285
- if (this.seleniumDriver === driver) {
286
- this.seleniumDriver = null;
287
- }
288
- await driver.quit();
289
- }
290
- }
291
- this.drivers = [];
292
- if (this.seleniumDriver) {
293
- await this.seleniumDriver.quit();
294
- this.seleniumDriver = null;
295
- }
296
- }
297
-
298
- async close() {
299
- if (this.drivers.length) {
300
- const index = this.drivers.findIndex((driver) => driver === this.seleniumDriver);
301
- if (index !== -1) this.drivers.splice(index, 1);
302
- }
303
- await this.seleniumDriver.close();
304
- }
305
-
306
- actions() {
307
- return this.seleniumDriver.actions({async: true});
308
- }
309
-
310
- private async getSeleniumProtocolElement(item) {
311
- const webElId = await item.getId();
312
- const elementObj = {
313
- 'element-6066-11e4-a52e-4f735466cecf': webElId,
314
- ELEMENT: webElId,
315
- };
316
-
317
- return elementObj;
318
- }
319
-
320
- private resolveUrl(urlOrPath: string) {
321
- let resolved;
322
-
323
- if (!urlOrPath.includes('http') && this.appBaseUrl) {
324
- const url = this.appBaseUrl;
325
- const path = urlOrPath;
326
-
327
- if (url.endsWith('/') && path.startsWith('/')) {
328
- resolved = `${url.replace(/.$/u, '')}${path}`;
329
- } else if (url.endsWith('/') && !path.startsWith('/')) {
330
- resolved = `${url}${path}`;
331
- } else if (!url.endsWith('/') && path.startsWith('/')) {
332
- resolved = `${url}${path}`;
333
- } else {
334
- resolved = `${url}/${path}`;
335
- }
336
- } else if (urlOrPath === '' || urlOrPath === '/') {
337
- return this.baseUrl;
338
- } else {
339
- resolved = urlOrPath;
340
- }
341
-
342
- return resolved;
343
- }
344
- }
345
-
346
- const browser = validateBrowserCallMethod(Browser);
347
-
348
- export {
349
- browser,
350
- Browser,
351
- };
@@ -1,397 +0,0 @@
1
- /* eslint-disable max-len */
2
- import {isBoolean, isString, isFunction, isPromise} from 'sat-utils';
3
- import {By, WebElement, WebDriver} from 'selenium-webdriver';
4
- import {browser} from './swd_client';
5
-
6
- function toSeleniumProtocolElement(webElId) {
7
- const elementObj = {
8
- 'element-6066-11e4-a52e-4f735466cecf': webElId,
9
- ELEMENT: webElId,
10
- };
11
- return elementObj;
12
- }
13
-
14
- const buildBy = (selector: string | By, getExecuteScriptArgs?: () => any[]): any => {
15
- if (selector instanceof By) {
16
- return selector;
17
- }
18
-
19
- getExecuteScriptArgs = isFunction(getExecuteScriptArgs) ? getExecuteScriptArgs : () => ([]);
20
-
21
- if (isString(selector) && (selector as string).includes('xpath=')) {
22
- return By.xpath((selector as string).replace('xpath=', ''));
23
- } else if (isString(selector) && (selector as string).includes('js=')) {
24
- return By.js((selector as string).replace('js=', ''), ...getExecuteScriptArgs());
25
- } else if (isPromise(selector)) {
26
- return selector;
27
- } else if (isFunction(selector)) {
28
- return By.js(selector, ...getExecuteScriptArgs());
29
- }
30
-
31
- return By.css(selector);
32
- };
33
-
34
- const SELENIUM_API_METHODS = [
35
- 'sendKeys', 'getTagName', 'getCssValue', 'getAttribute', 'getText', 'getRect',
36
- 'isEnabled', 'isSelected', 'submit', 'clear', 'getId', 'takeScreenshot', 'getLocation',
37
- ];
38
-
39
- class PromodSeleniumElements {
40
- private seleniumDriver: WebDriver;
41
- private selector: string;
42
- private wdElements: WebElement[];
43
- private getParent: () => Promise<PromodSeleniumElement & WebElement>;
44
- private getExecuteScriptArgs: () => any;
45
- public parentSelector: string;
46
-
47
- constructor(selector, client, getParent?, getExecuteScriptArgs?) {
48
- this.seleniumDriver = client;
49
- this.selector = selector;
50
- this.getParent = getParent;
51
- this.getExecuteScriptArgs = getExecuteScriptArgs;
52
- }
53
-
54
- setseleniumDriver(client: WebDriver) {
55
- this.seleniumDriver = client;
56
- }
57
-
58
- get(index): PromodSeleniumElementType {
59
- const childElement = new PromodSeleniumElement(this.selector, this.seleniumDriver, this.getElement.bind(this, index), null, true);
60
- if (this.parentSelector) {
61
- childElement.parentSelector = this.parentSelector || this.selector;
62
- }
63
- return childElement as any;
64
- }
65
-
66
- last(): PromodSeleniumElementType {
67
- return this.get(-1) as any;
68
- }
69
-
70
- first(): PromodSeleniumElementType {
71
- return this.get(0) as any;
72
- }
73
-
74
- private async getElement(index?) {
75
- this.seleniumDriver = browser.currentClient();
76
-
77
- if (this.getParent) {
78
- let parent = await this.getParent();
79
-
80
- if (parent.getWebDriverElement) {
81
- // @ts-ignore
82
- parent = await parent.getWebDriverElement();
83
- }
84
-
85
- this.wdElements = await parent.findElements(buildBy(this.selector, this.getExecuteScriptArgs));
86
- } else {
87
- this.wdElements = await this.seleniumDriver.findElements(buildBy(this.selector, this.getExecuteScriptArgs));
88
- }
89
-
90
- if (index === -1) {
91
- return this.wdElements[this.wdElements.length - 1];
92
- }
93
-
94
- return this.wdElements[index];
95
- }
96
-
97
- async getIds() {
98
- await this.getElement();
99
- // @ts-ignore
100
- return this.wdElements.map((item) => item.id_);
101
- }
102
-
103
- async getSeleniumProtocolElementObj() {
104
- const ids = await this.getIds();
105
-
106
- return ids.map(toSeleniumProtocolElement);
107
- }
108
-
109
-
110
- async each(cb: (item: PromodSeleniumElementType, index?: number) => Promise<void>): Promise<any> {
111
- await this.getElement(0);
112
-
113
- for (let i = 0; i < this.wdElements.length; i++) {
114
- await cb(new PromodSeleniumElement(this.selector, this.seleniumDriver, () => this.wdElements[i], null, true) as any, i);
115
- }
116
- }
117
-
118
- async count(): Promise<number> {
119
- await this.getElement(0);
120
- return this.wdElements.length;
121
- }
122
- }
123
-
124
- class PromodSeleniumElement {
125
- private seleniumDriver: WebDriver;
126
- private selector: string;
127
- private wdElement: WebElement;
128
- private getParent: () => Promise<PromodSeleniumElementType>;
129
- private getExecuteScriptArgs: () => any;
130
- private useParent: boolean;
131
- public parentSelector: string;
132
-
133
- constructor(selector, client, getParent?, getExecuteScriptArgs?, useParent?) {
134
- this.seleniumDriver = client;
135
- this.selector = selector;
136
- this.getParent = getParent;
137
- this.getExecuteScriptArgs = getExecuteScriptArgs;
138
- this.useParent = useParent;
139
-
140
- const self = this;
141
-
142
- SELENIUM_API_METHODS.forEach(function(methodName) {
143
- self[methodName] = (...args: any[]) => {
144
- const action = () => self.wdElement[methodName].call(self.wdElement, ...args);
145
-
146
- return self.callElementAction(action);
147
- };
148
- });
149
- }
150
-
151
- setseleniumDriver(client) {
152
- this.seleniumDriver = client;
153
- }
154
-
155
- $(selector): PromodSeleniumElementType {
156
- const childElement = new PromodSeleniumElement(selector, this.seleniumDriver, this.getElement.bind(this));
157
- childElement.parentSelector = this.selector;
158
- return childElement as any;
159
- }
160
-
161
- $$(selector): PromodSeleniumElementsType {
162
- const childElements = new PromodSeleniumElements(selector, this.seleniumDriver, this.getElement.bind(this));
163
- childElements.parentSelector = this.selector;
164
- return childElements as any;
165
- }
166
-
167
- async getSeleniumProtocolElementObj() {
168
- const id = await this.getId();
169
-
170
- return toSeleniumProtocolElement(id);
171
- }
172
-
173
- /**
174
- * @param {boolean} [withScroll] try to prevent intercept error by scoll to bottom/to
175
- * @returns {Promise<void>}
176
- */
177
- async click(withScroll?: boolean) {
178
- await this.getElement();
179
- if (withScroll) {
180
- const scrollableClickResult = await this.wdElement.click()
181
- .catch((err) => (this.isInteractionIntercepted(err) ? this.scrollIntoView('end').then(() => this.wdElement.click()) : err))
182
- .catch((err) => (this.isInteractionIntercepted(err) ? this.scrollIntoView('start').then(() => this.wdElement.click()) : err))
183
- .then((err) => err)
184
- .catch((err) => err);
185
-
186
- if (scrollableClickResult) {
187
- throw scrollableClickResult;
188
- }
189
- } else {
190
- return this.wdElement.click();
191
- }
192
- }
193
-
194
- async scrollIntoView(position?: 'end' | 'start') {
195
- await this.getElement();
196
- await this.seleniumDriver.executeScript(`
197
- let position = true;
198
- if(arguments[1] ==='end') {
199
- position = {block: 'end'}
200
- } else if(arguments[1] ==='start') {
201
- position = {block: 'start'}
202
- }
203
- arguments[0].scrollIntoView(position)
204
- `, this.getWebDriverElement(), position);
205
- }
206
-
207
- async getElement() {
208
- this.seleniumDriver = browser.currentClient();
209
- if (this.getParent) {
210
- let parent = await this.getParent() as any;
211
- if (!parent) {
212
- throw new Error(
213
- this.useParent
214
- ? `Any element with selector ${this.selector} was not found`
215
- : `Parent element with selector ${this.parentSelector} was not found`
216
- );
217
- }
218
- if (parent.getWebDriverElement) {
219
- parent = await parent.getWebDriverElement();
220
- }
221
-
222
- if (this.useParent) {
223
- this.wdElement = parent;
224
- } else {
225
- this.wdElement = await parent.findElement(buildBy(this.selector, this.getExecuteScriptArgs));
226
- }
227
-
228
- } else {
229
- this.wdElement = await this.seleniumDriver.findElement(buildBy(this.selector, this.getExecuteScriptArgs));
230
- }
231
-
232
- return this.wdElement;
233
- }
234
-
235
- /**
236
- * @returns {Promise<boolean>} button is present
237
- * @example
238
- * const button = $('button')
239
- * const buttonIsDisplayed = await button.isDisplayed();
240
- */
241
- async isDisplayed() {
242
- const result = await this.getElement().catch(() => false);
243
- if (isBoolean(result) && !result) {
244
- return false;
245
- }
246
- return this.wdElement.isDisplayed().then((res) => res, () => false);
247
- }
248
-
249
- /**
250
- * @returns {Promise<boolean>} button is present
251
- * @example
252
- * const button = $('button')
253
- * const buttonIsPresent = await button.isPresent();
254
- */
255
- async isPresent() {
256
- return this.getElement().then(() => true).catch((r) => false);
257
- }
258
-
259
- private async callElementAction(action) {
260
- await this.getElement();
261
-
262
- return action();
263
- }
264
-
265
- async getId() {
266
- await this.getElement();
267
- // @ts-ignore
268
- return this.wdElement.id_;
269
- }
270
-
271
- async getWebDriverElement() {
272
- await this.getElement();
273
-
274
- return this.wdElement;
275
- }
276
-
277
- locator() {
278
- let locatorValue = '';
279
- if (this.parentSelector) {
280
- locatorValue += ` Parent: ${this.parentSelector} `;
281
- }
282
- return {value: `${locatorValue}${this.selector}`};
283
- }
284
-
285
- private isInteractionIntercepted(err) {
286
- return err.toString().includes('element click intercepted');
287
- }
288
- }
289
-
290
-
291
- function getInitElementRest(selector: string | By | ((...args: any[]) => any) | Promise<any>, root?: PromodSeleniumElementType, ...rest: any[]) {
292
- let getParent = null;
293
- let getExecuteScriptArgs = null;
294
-
295
- /**
296
- * @info
297
- * in case if selector is string with "js=" marker or selector is a function
298
- */
299
-
300
- if ((isString(selector) && (selector as string).indexOf('js=') === 0) || isFunction(selector) || isPromise(selector)) {
301
- getExecuteScriptArgs = function getExecuteScriptArgs() {
302
- return [root, ...rest];
303
- };
304
- } else if (root && root instanceof PromodSeleniumElement) {
305
- getParent = function getParent() {
306
- return root;
307
- };
308
- }
309
-
310
- return [getParent, getExecuteScriptArgs];
311
- }
312
-
313
- const $ = (selector: string | By | ((...args: any[]) => any) | Promise<any>, root?: PromodSeleniumElementType | any, ...rest: any[]): PromodSeleniumElementType => {
314
- const restArgs = getInitElementRest(selector, root, ...rest);
315
-
316
- return new PromodSeleniumElement(selector, null, ...restArgs) as any;
317
- };
318
-
319
-
320
- const $$ = (selector: string | By | ((...args: any[]) => any) | Promise<any>, root?: PromodSeleniumElementType | any, ...rest: any[]): PromodSeleniumElementsType => {
321
- const restArgs = getInitElementRest(selector, root, ...rest);
322
-
323
- return new PromodSeleniumElements(selector, null, ...restArgs) as any;
324
- };
325
-
326
- export {$, $$, PromodSeleniumElement, PromodSeleniumElements, By};
327
-
328
- export interface PromodSeleniumElementsType {
329
- wdElements: WebElement[];
330
-
331
- get(index: number): PromodSeleniumElementType;
332
-
333
- last(): PromodSeleniumElementType;
334
-
335
- first(): PromodSeleniumElementType;
336
-
337
- each(cb: (item: PromodSeleniumElementType, index?: number) => Promise<void>): Promise<void>;
338
-
339
- count(): Promise<number>;
340
- }
341
-
342
- export interface PromodSeleniumElementType {
343
-
344
- wdElement: WebElement;
345
-
346
- getId(): Promise<string>;
347
-
348
- click(withScroll?: boolean): Promise<void>;
349
-
350
- sendKeys(...keys: Array<string | number | Promise<string | number>>): Promise<void>;
351
-
352
- getTagName(): Promise<string>;
353
-
354
- getCssValue(cssStyleProperty: string): Promise<string>;
355
-
356
- getAttribute(attributeName: string): Promise<string>;
357
-
358
- getText(): Promise<string>;
359
-
360
- getSize(): Promise<{
361
- width: number;
362
- height: number;
363
- }>;
364
-
365
- getRect(): Promise<{
366
- x: number;
367
- y: number;
368
- width: number;
369
- height: number;
370
- }>;
371
-
372
- getLocation(): Promise<{
373
- x: number;
374
- y: number;
375
- }>;
376
-
377
- $(selector: string | By | ((...args: any[]) => any) | Promise<any>): PromodSeleniumElementType;
378
- $$(selector: string | By | ((...args: any[]) => any) | Promise<any>): PromodSeleniumElementsType;
379
-
380
- isEnabled(): Promise<boolean>;
381
-
382
- isSelected(): Promise<boolean>;
383
-
384
- isPresent(): Promise<boolean>;
385
-
386
- submit(): Promise<void>;
387
-
388
- clear(): Promise<void>;
389
-
390
- isDisplayed(): Promise<boolean>;
391
-
392
- takeScreenshot(opt_scroll?: boolean): Promise<string>;
393
-
394
- getWebDriverElement(): Promise<WebElement>;
395
-
396
- scrollIntoView(position?: boolean | string): Promise<void>;
397
- }