@oracle/oraclejet-selenium-driver 19.0.0

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.
@@ -0,0 +1,165 @@
1
+ import { TestDriverBase, getTimeouts, Keys } from '@oracle/oraclejet-testing/UNSAFE_Driver';
2
+ import { Key, By } from 'selenium-webdriver';
3
+
4
+ const modifierKeys = {
5
+ SHIFT: Key.SHIFT,
6
+ CONTROL: Key.CONTROL,
7
+ CONTROL_COMMAND: Key.CONTROL,
8
+ ALT: Key.ALT
9
+ };
10
+ const keyMap = {
11
+ ...modifierKeys,
12
+ BACKSPACE: Key.BACK_SPACE,
13
+ TAB: Key.TAB,
14
+ ENTER: Key.ENTER,
15
+ ESCAPE: Key.ESCAPE,
16
+ PAGE_UP: Key.PAGE_UP,
17
+ PAGE_DOWN: Key.PAGE_DOWN,
18
+ END: Key.END,
19
+ HOME: Key.HOME,
20
+ ARROW_LEFT: Key.ARROW_LEFT,
21
+ ARROW_UP: Key.ARROW_UP,
22
+ ARROW_RIGHT: Key.ARROW_RIGHT,
23
+ ARROW_DOWN: Key.ARROW_DOWN,
24
+ DELETE: Key.DELETE,
25
+ F1: Key.F1,
26
+ F2: Key.F2,
27
+ F3: Key.F3,
28
+ F4: Key.F4,
29
+ F5: Key.F5,
30
+ F6: Key.F6,
31
+ F7: Key.F7,
32
+ F8: Key.F8,
33
+ F9: Key.F9,
34
+ F10: Key.F10,
35
+ F11: Key.F11,
36
+ F12: Key.F12
37
+ };
38
+ let currentScriptTimeout;
39
+ class SeleniumDriver extends TestDriverBase {
40
+ constructor(driver) {
41
+ super();
42
+ this._platform = '';
43
+ this._waitForElement = async (locator, parent) => {
44
+ try {
45
+ const el = await this.waitFor(() => parent.findElement(By.css(locator.css)), {
46
+ timeout: getTimeouts().elementExistsTimeout
47
+ });
48
+ return Promise.resolve(wrapElement(el, this._waitForElement, this._waitForElements));
49
+ }
50
+ catch {
51
+ throw Error(`No element matching query "${JSON.stringify(locator)}"`);
52
+ }
53
+ };
54
+ this._waitForElements = async (locator, parent) => {
55
+ let matches;
56
+ try {
57
+ // loop to find at least 1 match
58
+ matches = await this.waitFor(async () => {
59
+ const all = await parent.findElements(By.css(locator.css));
60
+ if (all.length) {
61
+ return all;
62
+ }
63
+ return;
64
+ }, {
65
+ timeout: getTimeouts().elementExistsTimeout
66
+ });
67
+ }
68
+ catch {
69
+ return [];
70
+ }
71
+ return Promise.resolve(Array.from(matches || []).map((m) => wrapElement(m, this._waitForElement, this._waitForElements)));
72
+ };
73
+ this._driver = driver;
74
+ }
75
+ async executeScript(script, ...args) {
76
+ await this._setDriverTimeouts();
77
+ return this._driver.executeScript(script, ...args);
78
+ }
79
+ async waitForElement(locator) {
80
+ return this._waitForElement(locator, this._driver);
81
+ }
82
+ async waitForElements(locator) {
83
+ return this._waitForElements(locator, this._driver);
84
+ }
85
+ /**
86
+ * Get a TestElement for the given WebElement
87
+ * @param from The WebElement
88
+ * @returns A TestElement
89
+ */
90
+ getTestElement(from) {
91
+ return wrapElement(from, this._waitForElement, this._waitForElements);
92
+ }
93
+ async sendKeys(element, ...text) {
94
+ await this._ensurePlatform();
95
+ return this.unwrapElement(element).sendKeys(...text.map(this._getPlatformKey.bind(this)));
96
+ }
97
+ async click(element, options = {}) {
98
+ await this._ensurePlatform();
99
+ const modifiers = options.modifiers || [];
100
+ const actions = this._driver.actions();
101
+ if (modifiers) {
102
+ modifiers.map(this._getPlatformKey.bind(this)).forEach((m) => actions.keyDown(m));
103
+ await actions.perform();
104
+ }
105
+ await this.unwrapElement(element).click();
106
+ return actions.clear();
107
+ }
108
+ unwrapElement(element) {
109
+ return element._el;
110
+ }
111
+ async _ensurePlatform() {
112
+ if (!this._platform) {
113
+ this._platform = (await this._driver.getCapabilities()).getPlatform() || 'unknown';
114
+ }
115
+ }
116
+ /**
117
+ * Get the platform-specific key value for the key, if available.
118
+ * @param key The key value
119
+ * @returns A platform-specific value for the key, or the original key if none exists
120
+ */
121
+ _getPlatformKey(key) {
122
+ if (typeof key === 'object') {
123
+ return Keys.CONTROL_COMMAND === key
124
+ ? this._platform === 'mac'
125
+ ? Key.COMMAND
126
+ : Key.CONTROL
127
+ : keyMap[key.key];
128
+ }
129
+ return key;
130
+ }
131
+ _setDriverTimeouts() {
132
+ const { scriptTimeout } = getTimeouts();
133
+ if (scriptTimeout !== currentScriptTimeout) {
134
+ currentScriptTimeout = scriptTimeout;
135
+ // set script timeout
136
+ // we don't set implicit (waitForElement) because we want to enforce our own behavior
137
+ return this._driver.manage().setTimeouts({
138
+ script: scriptTimeout
139
+ });
140
+ }
141
+ return;
142
+ }
143
+ }
144
+ function wrapElement(element, waitForElement, waitForElements) {
145
+ return new TestElementImpl(element, waitForElement, waitForElements);
146
+ }
147
+ class TestElementImpl {
148
+ constructor(element, waitForElement, waitForElements) {
149
+ this._el = element;
150
+ this._waitForElement = waitForElement;
151
+ this._waitForElements = waitForElements;
152
+ }
153
+ waitForElement(locator) {
154
+ return this._waitForElement(locator, this._el);
155
+ }
156
+ waitForElements(locator) {
157
+ return this._waitForElements(locator, this._el);
158
+ }
159
+ getAttribute(attrName) {
160
+ return this._el.getAttribute(attrName);
161
+ }
162
+ }
163
+
164
+ export { SeleniumDriver };
165
+ //# sourceMappingURL=SeleniumDriver.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SeleniumDriver.mjs","sources":["../../src/UNSAFE_SeleniumDriver/SeleniumDriver.ts"],"sourcesContent":["import {\n type ClickOptions,\n type KeyType,\n TestDriverBase,\n type TestElement,\n getTimeouts\n} from '@oracle/oraclejet-testing/UNSAFE_Driver';\nimport { Keys as TestingKeys } from '@oracle/oraclejet-testing/UNSAFE_Driver';\nimport { ElementLocator } from '@oracle/oraclejet-testing/UNSAFE_Locators';\nimport { By, Key as WebDriverKeys, WebDriver, WebElement } from 'selenium-webdriver';\n\ntype WaitForElementType = (\n locator: ElementLocator,\n parent: WebDriver | WebElement\n) => Promise<TestElement>;\n\ntype WaitForElementsType = (\n locator: ElementLocator,\n parent: WebDriver | WebElement\n) => Promise<TestElement[]>;\n\nconst modifierKeys = {\n SHIFT: WebDriverKeys.SHIFT,\n CONTROL: WebDriverKeys.CONTROL,\n CONTROL_COMMAND: WebDriverKeys.CONTROL,\n ALT: WebDriverKeys.ALT\n};\n\nconst keyMap: { [key: string]: string } = {\n ...modifierKeys,\n BACKSPACE: WebDriverKeys.BACK_SPACE,\n TAB: WebDriverKeys.TAB,\n ENTER: WebDriverKeys.ENTER,\n ESCAPE: WebDriverKeys.ESCAPE,\n PAGE_UP: WebDriverKeys.PAGE_UP,\n PAGE_DOWN: WebDriverKeys.PAGE_DOWN,\n END: WebDriverKeys.END,\n HOME: WebDriverKeys.HOME,\n ARROW_LEFT: WebDriverKeys.ARROW_LEFT,\n ARROW_UP: WebDriverKeys.ARROW_UP,\n ARROW_RIGHT: WebDriverKeys.ARROW_RIGHT,\n ARROW_DOWN: WebDriverKeys.ARROW_DOWN,\n DELETE: WebDriverKeys.DELETE,\n\n F1: WebDriverKeys.F1,\n F2: WebDriverKeys.F2,\n F3: WebDriverKeys.F3,\n F4: WebDriverKeys.F4,\n F5: WebDriverKeys.F5,\n F6: WebDriverKeys.F6,\n F7: WebDriverKeys.F7,\n F8: WebDriverKeys.F8,\n F9: WebDriverKeys.F9,\n F10: WebDriverKeys.F10,\n F11: WebDriverKeys.F11,\n F12: WebDriverKeys.F12\n};\n\nlet currentScriptTimeout: number | undefined;\n\nexport class SeleniumDriver extends TestDriverBase {\n private _driver: WebDriver;\n private _platform = '';\n\n constructor(driver: WebDriver) {\n super();\n this._driver = driver;\n }\n\n async executeScript<T>(script: string | ((...args: any) => T), ...args: any): Promise<T> {\n await this._setDriverTimeouts();\n return this._driver.executeScript<T>(script, ...args);\n }\n\n async waitForElement(locator: ElementLocator): Promise<TestElement> {\n return this._waitForElement(locator, this._driver);\n }\n\n async waitForElements(locator: ElementLocator): Promise<TestElement[]> {\n return this._waitForElements(locator, this._driver);\n }\n\n private _waitForElement = async (locator: ElementLocator, parent: WebDriver | WebElement) => {\n try {\n const el = await this.waitFor<Promise<WebElement>>(\n () => parent.findElement(By.css(locator.css)),\n {\n timeout: getTimeouts().elementExistsTimeout\n }\n );\n return Promise.resolve(wrapElement(el, this._waitForElement, this._waitForElements));\n } catch {\n throw Error(`No element matching query \"${JSON.stringify(locator)}\"`);\n }\n };\n\n private _waitForElements = async (locator: ElementLocator, parent: WebDriver | WebElement) => {\n let matches: WebElement[] | undefined;\n try {\n // loop to find at least 1 match\n matches = await this.waitFor<WebElement[] | undefined>(\n async () => {\n const all = await parent.findElements(By.css(locator.css));\n if (all.length) {\n return all;\n }\n return;\n },\n {\n timeout: getTimeouts().elementExistsTimeout\n }\n );\n } catch {\n return [];\n }\n return Promise.resolve(\n Array.from(matches || []).map((m) =>\n wrapElement(m, this._waitForElement, this._waitForElements)\n )\n );\n };\n\n /**\n * Get a TestElement for the given WebElement\n * @param from The WebElement\n * @returns A TestElement\n */\n getTestElement(from: WebElement) {\n return wrapElement(from, this._waitForElement, this._waitForElements);\n }\n\n async sendKeys(element: TestElement, ...text: (string | KeyType)[]): Promise<void> {\n await this._ensurePlatform();\n return this.unwrapElement(element).sendKeys(\n ...text.map<string>(this._getPlatformKey.bind(this))\n );\n }\n\n async click(element: TestElement, options: ClickOptions = {}) {\n await this._ensurePlatform();\n const modifiers = options.modifiers || [];\n const actions = this._driver.actions();\n if (modifiers) {\n modifiers.map(this._getPlatformKey.bind(this)).forEach((m) => actions.keyDown(m));\n await actions.perform();\n }\n await this.unwrapElement(element).click();\n return actions.clear();\n }\n\n unwrapElement<T = WebElement>(element: TestElement): T {\n return (element as TestElementImpl)._el as T;\n }\n\n private async _ensurePlatform() {\n if (!this._platform) {\n this._platform = (await this._driver.getCapabilities()).getPlatform() || 'unknown';\n }\n }\n\n /**\n * Get the platform-specific key value for the key, if available.\n * @param key The key value\n * @returns A platform-specific value for the key, or the original key if none exists\n */\n private _getPlatformKey(key: string | KeyType) {\n if (typeof key === 'object') {\n return TestingKeys.CONTROL_COMMAND === key\n ? this._platform === 'mac'\n ? WebDriverKeys.COMMAND\n : WebDriverKeys.CONTROL\n : keyMap[key.key];\n }\n return key;\n }\n\n private _setDriverTimeouts() {\n const { scriptTimeout } = getTimeouts();\n if (scriptTimeout !== currentScriptTimeout) {\n currentScriptTimeout = scriptTimeout;\n // set script timeout\n // we don't set implicit (waitForElement) because we want to enforce our own behavior\n return this._driver.manage().setTimeouts({\n script: scriptTimeout\n });\n }\n return;\n }\n}\n\nfunction wrapElement(\n element: WebElement,\n waitForElement: WaitForElementType,\n waitForElements: WaitForElementsType\n) {\n return new TestElementImpl(element, waitForElement, waitForElements);\n}\n\nclass TestElementImpl implements TestElement {\n _el: WebElement;\n _waitForElement: WaitForElementType;\n _waitForElements: WaitForElementsType;\n\n constructor(\n element: WebElement,\n waitForElement: WaitForElementType,\n waitForElements: WaitForElementsType\n ) {\n this._el = element;\n this._waitForElement = waitForElement;\n this._waitForElements = waitForElements;\n }\n waitForElement(locator: ElementLocator): Promise<TestElement> {\n return this._waitForElement(locator, this._el);\n }\n waitForElements(locator: ElementLocator): Promise<TestElement[]> {\n return this._waitForElements(locator, this._el);\n }\n getAttribute(attrName: string): Promise<string | null> {\n return this._el.getAttribute(attrName);\n }\n}\n"],"names":["WebDriverKeys","TestingKeys"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var SeleniumDriver = require('./SeleniumDriver.cjs');
6
+
7
+
8
+
9
+ exports.SeleniumDriver = SeleniumDriver.SeleniumDriver;
10
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1 @@
1
+ export { SeleniumDriver } from './SeleniumDriver';
@@ -0,0 +1,2 @@
1
+ export { SeleniumDriver } from './SeleniumDriver.mjs';
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "@oracle/oraclejet-selenium-driver",
3
+ "scripts": {
4
+ "build": "turbo run-build --filter=@oracle/oraclejet-selenium-driver",
5
+ "check-types": "turbo run-check-types --filter=@oracle/oraclejet-selenium-driver -- ",
6
+ "clean": "rimraf dist",
7
+ "copy-files": "mergeJson package.json src/package-overrides.json dist/package.json",
8
+ "lint": "turbo run-lint --filter=@oracle/oraclejet-selenium-driver -- ",
9
+ "run-build": "rollup -c rollup.config.mjs && yarn copy-files",
10
+ "run-check-types": "tsc --noEmit",
11
+ "run-lint": "eslint",
12
+ "test": "jest-http-launcher --httpRoot=src --port=${WD_SERVER_PORT:-6008} --config=test/jest.config.js",
13
+ "test-ci-browser": "yarn test --headless"
14
+ },
15
+ "exports": {
16
+ "./*": {
17
+ "types": "./*/index.d.ts",
18
+ "require": "./*/index.cjs",
19
+ "import": "./*/index.mjs"
20
+ }
21
+ },
22
+ "typesVersions": {
23
+ "*": {
24
+ "*": [
25
+ "./*/index.d.ts"
26
+ ]
27
+ }
28
+ },
29
+ "peerDependencies": {
30
+ "selenium-webdriver": ">=4.0.0"
31
+ },
32
+ "dependencies": {
33
+ "@oracle/oraclejet-testing": "19.0.0"
34
+ },
35
+ "devDependencies": {
36
+ "@jest/globals": "29.6.2",
37
+ "@oracle/oraclejet-config-eslint": "workspace:*",
38
+ "@oracle/oraclejet-config-jest": "workspace:*",
39
+ "@oracle/oraclejet-config-typescript": "workspace:*",
40
+ "@oracle/oraclejet-internal-test-utils": "workspace:*",
41
+ "@oracle/oraclejet-internal-ws-build": "workspace:^",
42
+ "copyfiles": "2.4.1",
43
+ "eslint": "9.24.0",
44
+ "http-server": "14.1.1",
45
+ "jest": "29.6.2",
46
+ "rimraf": "3.0.2",
47
+ "rollup": "2.70.2",
48
+ "ts-jest": "29.1.0",
49
+ "turbo": "2.3.3",
50
+ "typescript": "5.8.3",
51
+ "typescript-eslint": "8.29.1"
52
+ },
53
+ "version": "19.0.0"
54
+ }