@applitools/core 3.9.0 → 3.10.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.
- package/CHANGELOG.md +180 -0
- package/dist/abort.js +40 -0
- package/dist/automation/abort.js +49 -0
- package/dist/{ufg → automation}/close.js +22 -6
- package/dist/automation/get-nml-client.js +3 -3
- package/dist/{ufg → automation}/get-results.js +4 -4
- package/dist/check-and-close.js +1 -10
- package/dist/check.js +8 -17
- package/dist/classic/check-and-close.js +111 -69
- package/dist/classic/check.js +103 -63
- package/dist/classic/core.js +4 -4
- package/dist/classic/get-base-eyes.js +29 -7
- package/dist/classic/open-eyes.js +42 -56
- package/dist/classic/utils/extract-default-renderers.js +72 -0
- package/dist/classic/utils/take-screenshots.js +60 -0
- package/dist/close.js +6 -3
- package/dist/core.js +4 -4
- package/dist/get-typed-eyes.js +3 -5
- package/dist/make-manager.js +2 -2
- package/dist/open-eyes.js +13 -10
- package/dist/ufg/check-and-close.js +61 -54
- package/dist/ufg/check.js +62 -60
- package/dist/ufg/core.js +2 -2
- package/dist/ufg/get-base-eyes.js +23 -13
- package/dist/ufg/open-eyes.js +24 -37
- package/dist/ufg/utils/extract-default-renderers.js +22 -0
- package/dist/universal/core.js +1 -0
- package/dist/universal/spec-driver.js +43 -50
- package/package.json +23 -28
- package/types/abort.d.ts +13 -0
- package/types/{classic → automation}/abort.d.ts +5 -4
- package/types/{classic → automation}/close.d.ts +3 -4
- package/types/automation/get-nml-client.d.ts +3 -3
- package/types/automation/get-results.d.ts +11 -0
- package/types/automation/types.d.ts +78 -7
- package/types/{ufg → automation}/utils/uniquify-renderers.d.ts +1 -1
- package/types/check.d.ts +2 -2
- package/types/classic/check-and-close.d.ts +11 -4
- package/types/classic/check.d.ts +6 -3
- package/types/classic/core.d.ts +2 -1
- package/types/classic/get-base-eyes.d.ts +4 -8
- package/types/classic/open-eyes.d.ts +3 -4
- package/types/classic/types.d.ts +3 -4
- package/types/classic/utils/extract-default-renderers.d.ts +9 -0
- package/types/classic/utils/take-screenshots.d.ts +18 -0
- package/types/close.d.ts +3 -2
- package/types/core.d.ts +7 -1
- package/types/get-typed-eyes.d.ts +5 -4
- package/types/make-manager.d.ts +7 -1
- package/types/open-eyes.d.ts +7 -1
- package/types/types.d.ts +3 -6
- package/types/ufg/check-and-close.d.ts +8 -12
- package/types/ufg/check.d.ts +4 -9
- package/types/ufg/core.d.ts +3 -3
- package/types/ufg/get-base-eyes.d.ts +3 -7
- package/types/ufg/open-eyes.d.ts +3 -4
- package/types/ufg/types.d.ts +3 -24
- package/types/ufg/utils/extract-default-renderers.d.ts +5 -0
- package/types/universal/spec-driver.d.ts +6 -5
- package/types/universal/types.d.ts +54 -50
- package/dist/classic/abort.js +0 -23
- package/dist/classic/close.js +0 -23
- package/dist/ufg/abort.js +0 -33
- package/types/ufg/abort.d.ts +0 -21
- package/types/ufg/close.d.ts +0 -19
- package/types/ufg/get-results.d.ts +0 -16
- /package/dist/{ufg → automation}/utils/uniquify-renderers.js +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.extractDefaultRenderers = void 0;
|
|
4
|
+
async function extractDefaultRenderers({ driver, }) {
|
|
5
|
+
if (!driver)
|
|
6
|
+
return [];
|
|
7
|
+
const currentContext = driver.currentContext;
|
|
8
|
+
try {
|
|
9
|
+
const environment = await driver.getEnvironment();
|
|
10
|
+
if (environment.isWeb) {
|
|
11
|
+
const viewportSize = await driver.getViewportSize();
|
|
12
|
+
return [{ name: 'chrome', ...viewportSize }];
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
finally {
|
|
19
|
+
await currentContext.focus();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.extractDefaultRenderers = extractDefaultRenderers;
|
package/dist/universal/core.js
CHANGED
|
@@ -27,7 +27,6 @@ exports.makeSpec = void 0;
|
|
|
27
27
|
const utils = __importStar(require("@applitools/utils"));
|
|
28
28
|
function makeSpec({ socket, spec, }) {
|
|
29
29
|
const commands = {
|
|
30
|
-
// #region UTILITY
|
|
31
30
|
isDriver(driver) {
|
|
32
31
|
return utils.types.has(driver, 'applitools-ref-id');
|
|
33
32
|
},
|
|
@@ -44,32 +43,17 @@ function makeSpec({ socket, spec, }) {
|
|
|
44
43
|
utils.types.has(selector, 'selector') &&
|
|
45
44
|
(utils.types.isString(selector.selector) || utils.types.has(selector, 'applitools-ref-id'))));
|
|
46
45
|
},
|
|
47
|
-
extractContext(driver) {
|
|
48
|
-
return driver.context;
|
|
49
|
-
},
|
|
50
|
-
extractSelector(element) {
|
|
51
|
-
return element.selector;
|
|
52
|
-
},
|
|
53
|
-
extractHostName(driver) {
|
|
54
|
-
var _a;
|
|
55
|
-
return (_a = driver.hostname) !== null && _a !== void 0 ? _a : null;
|
|
56
|
-
},
|
|
57
|
-
isStaleElementError(error) {
|
|
58
|
-
return error === null || error === void 0 ? void 0 : error.isStaleElementError;
|
|
59
|
-
},
|
|
60
46
|
async isEqualElements(context, element1, element2) {
|
|
61
47
|
return socket.request('Driver.isEqualElements', { context, element1, element2 });
|
|
62
48
|
},
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
async mainContext(context) {
|
|
66
|
-
return socket.request('Driver.mainContext', { context });
|
|
49
|
+
isStaleElementError(error) {
|
|
50
|
+
return error === null || error === void 0 ? void 0 : error.isStaleElementError;
|
|
67
51
|
},
|
|
68
|
-
|
|
69
|
-
return
|
|
52
|
+
extractContext(driver) {
|
|
53
|
+
return driver.context;
|
|
70
54
|
},
|
|
71
|
-
|
|
72
|
-
return
|
|
55
|
+
extractSelector(element) {
|
|
56
|
+
return element.selector;
|
|
73
57
|
},
|
|
74
58
|
async executeScript(context, script, arg) {
|
|
75
59
|
return socket.request('Driver.executeScript', { context, script: script.toString(), arg });
|
|
@@ -89,20 +73,26 @@ function makeSpec({ socket, spec, }) {
|
|
|
89
73
|
async setElementText(context, element, text) {
|
|
90
74
|
return socket.request('Driver.setElementText', { context, element, text });
|
|
91
75
|
},
|
|
92
|
-
async
|
|
93
|
-
return socket.request('Driver.
|
|
76
|
+
async getElementRegion(context, element) {
|
|
77
|
+
return socket.request('Driver.getElementRegion', { context, element });
|
|
94
78
|
},
|
|
95
|
-
async
|
|
96
|
-
return socket.request('Driver.
|
|
79
|
+
async getElementAttribute(context, element, attr) {
|
|
80
|
+
return socket.request('Driver.getElementAttribute', { context, element, attr });
|
|
97
81
|
},
|
|
98
|
-
async
|
|
99
|
-
return socket.request('Driver.
|
|
82
|
+
async hover(context, element) {
|
|
83
|
+
return socket.request('Driver.hover', { context, element });
|
|
100
84
|
},
|
|
101
|
-
async
|
|
102
|
-
return socket.request('Driver.
|
|
85
|
+
async click(context, element) {
|
|
86
|
+
return socket.request('Driver.click', { context, element });
|
|
103
87
|
},
|
|
104
|
-
async
|
|
105
|
-
return socket.request('Driver.
|
|
88
|
+
async mainContext(context) {
|
|
89
|
+
return socket.request('Driver.mainContext', { context });
|
|
90
|
+
},
|
|
91
|
+
async parentContext(context) {
|
|
92
|
+
return socket.request('Driver.parentContext', { context });
|
|
93
|
+
},
|
|
94
|
+
async childContext(context, element) {
|
|
95
|
+
return socket.request('Driver.childContext', { context, element });
|
|
106
96
|
},
|
|
107
97
|
async getCapabilities(driver) {
|
|
108
98
|
return socket.request('Driver.getCapabilities', { driver });
|
|
@@ -110,23 +100,18 @@ function makeSpec({ socket, spec, }) {
|
|
|
110
100
|
async getDriverInfo(driver) {
|
|
111
101
|
return socket.request('Driver.getDriverInfo', { driver });
|
|
112
102
|
},
|
|
113
|
-
async
|
|
114
|
-
return socket.request('Driver.
|
|
115
|
-
},
|
|
116
|
-
async getUrl(driver) {
|
|
117
|
-
return socket.request('Driver.getUrl', { driver });
|
|
103
|
+
async getWindowSize(driver) {
|
|
104
|
+
return socket.request('Driver.getWindowSize', { driver });
|
|
118
105
|
},
|
|
119
|
-
async
|
|
120
|
-
return socket.request('Driver.
|
|
106
|
+
async setWindowSize(driver, size) {
|
|
107
|
+
return socket.request('Driver.setWindowSize', { driver, size });
|
|
121
108
|
},
|
|
122
|
-
async
|
|
123
|
-
return socket.request('Driver.
|
|
109
|
+
async getViewportSize(driver) {
|
|
110
|
+
return socket.request('Driver.getViewportSize', { driver });
|
|
124
111
|
},
|
|
125
|
-
async
|
|
126
|
-
return socket.request('Driver.
|
|
112
|
+
async setViewportSize(driver, size) {
|
|
113
|
+
return socket.request('Driver.setViewportSize', { driver, size });
|
|
127
114
|
},
|
|
128
|
-
// #endregion
|
|
129
|
-
// #region NATIVE COMMANDS
|
|
130
115
|
async getSystemBars(driver) {
|
|
131
116
|
return socket.request('Driver.getSystemBars', { driver });
|
|
132
117
|
},
|
|
@@ -136,15 +121,24 @@ function makeSpec({ socket, spec, }) {
|
|
|
136
121
|
async setOrientation(driver, orientation) {
|
|
137
122
|
return socket.request('Driver.setOrientation', { driver, orientation });
|
|
138
123
|
},
|
|
139
|
-
async
|
|
140
|
-
return socket.request('Driver.
|
|
124
|
+
async getCookies(driver, context) {
|
|
125
|
+
return socket.request('Driver.getCookies', { driver, context });
|
|
126
|
+
},
|
|
127
|
+
async getTitle(driver) {
|
|
128
|
+
return socket.request('Driver.getTitle', { driver });
|
|
129
|
+
},
|
|
130
|
+
async getUrl(driver) {
|
|
131
|
+
return socket.request('Driver.getUrl', { driver });
|
|
141
132
|
},
|
|
142
|
-
async
|
|
143
|
-
return socket.request('Driver.
|
|
133
|
+
async takeScreenshot(driver) {
|
|
134
|
+
return socket.request('Driver.takeScreenshot', { driver });
|
|
144
135
|
},
|
|
145
136
|
async performAction(driver, steps) {
|
|
146
137
|
return socket.request('Driver.performAction', { driver, steps });
|
|
147
138
|
},
|
|
139
|
+
async visit(driver, url) {
|
|
140
|
+
return socket.request('Driver.visit', { driver, url });
|
|
141
|
+
},
|
|
148
142
|
async getCurrentWorld(driver) {
|
|
149
143
|
return socket.request('Driver.getCurrentWorld', { driver });
|
|
150
144
|
},
|
|
@@ -154,7 +148,6 @@ function makeSpec({ socket, spec, }) {
|
|
|
154
148
|
async switchWorld(driver, name) {
|
|
155
149
|
return socket.request('Driver.switchWorld', { driver, name });
|
|
156
150
|
},
|
|
157
|
-
// #endregion
|
|
158
151
|
};
|
|
159
152
|
return spec.reduce((spec, name) => {
|
|
160
153
|
return Object.assign(spec, { [name]: commands[name] });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.0",
|
|
4
4
|
"homepage": "https://applitools.com",
|
|
5
5
|
"bugs": {
|
|
6
6
|
"url": "https://github.com/applitools/eyes.sdk.javascript1/issues"
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"build:dist": "run --top-level tsc --project ./tsconfig.build.json",
|
|
47
47
|
"build:x64": "yarn build:dist && yarn build:bin:x64",
|
|
48
48
|
"build:arm64": "yarn build:dist && yarn build:bin:arm64",
|
|
49
|
-
"build:bin:x64": "pkg . --target node14-linux-x64,node14-alpine-x64,node14-macos-x64,node14-win-x64",
|
|
50
|
-
"build:bin:arm64": "pkg . --target node14-linux-arm64 --output ./bin/core-linux-arm64",
|
|
49
|
+
"build:bin:x64": "rm -rf ../spec-driver-webdriver/node_modules/webdriver && pkg . --target node14-linux-x64,node14-alpine-x64,node14-macos-x64,node14-win-x64",
|
|
50
|
+
"build:bin:arm64": "rm -rf ../spec-driver-webdriver/node_modules/webdriver && pkg . --target node14-linux-arm64 --output ./bin/core-linux-arm64",
|
|
51
51
|
"build:bin:zip": "zip -j ./bin/core.zip $(find ./bin -type f -not -name '*.zip' -not -name '*.tar.gz' | xargs)",
|
|
52
52
|
"build:bin:tgz": "tar -czf ./bin/core.tar.gz $(find ./bin -type f -not -name '*.zip' -not -name '*.tar.gz' | xargs)",
|
|
53
53
|
"test": "run --top-level mocha './test/**/*.spec.ts' --exclude './test/bin/**' --parallel --jobs ${MOCHA_JOBS:-15} --exit",
|
|
@@ -62,52 +62,47 @@
|
|
|
62
62
|
"pkg": {
|
|
63
63
|
"scripts": "./dist/cli/cli.js",
|
|
64
64
|
"outputPath": "./bin",
|
|
65
|
-
"compress": "GZip"
|
|
66
|
-
"assets": [
|
|
67
|
-
"./node_modules/vm2/lib/setup-sandbox.js"
|
|
68
|
-
]
|
|
65
|
+
"compress": "GZip"
|
|
69
66
|
},
|
|
70
67
|
"dependencies": {
|
|
71
|
-
"@applitools/core-base": "1.5.
|
|
68
|
+
"@applitools/core-base": "1.5.2",
|
|
72
69
|
"@applitools/dom-capture": "11.2.2",
|
|
73
70
|
"@applitools/dom-snapshot": "4.7.10",
|
|
74
|
-
"@applitools/driver": "1.13.
|
|
75
|
-
"@applitools/ec-client": "1.7.
|
|
76
|
-
"@applitools/logger": "2.0.
|
|
77
|
-
"@applitools/nml-client": "1.5.
|
|
78
|
-
"@applitools/req": "1.5.
|
|
79
|
-
"@applitools/screenshoter": "3.8.
|
|
80
|
-
"@applitools/snippets": "2.4.
|
|
81
|
-
"@applitools/socket": "1.1.
|
|
82
|
-
"@applitools/spec-driver-webdriver": "1.0.
|
|
83
|
-
"@applitools/ufg-client": "1.7.
|
|
84
|
-
"@applitools/utils": "1.5.
|
|
71
|
+
"@applitools/driver": "1.13.6",
|
|
72
|
+
"@applitools/ec-client": "1.7.6",
|
|
73
|
+
"@applitools/logger": "2.0.9",
|
|
74
|
+
"@applitools/nml-client": "1.5.9",
|
|
75
|
+
"@applitools/req": "1.5.4",
|
|
76
|
+
"@applitools/screenshoter": "3.8.9",
|
|
77
|
+
"@applitools/snippets": "2.4.23",
|
|
78
|
+
"@applitools/socket": "1.1.9",
|
|
79
|
+
"@applitools/spec-driver-webdriver": "1.0.43",
|
|
80
|
+
"@applitools/ufg-client": "1.7.2",
|
|
81
|
+
"@applitools/utils": "1.5.2",
|
|
85
82
|
"@types/ws": "8.5.5",
|
|
86
83
|
"abort-controller": "3.0.0",
|
|
87
84
|
"chalk": "4.1.2",
|
|
88
85
|
"node-fetch": "2.6.7",
|
|
89
|
-
"webdriver": "7.
|
|
86
|
+
"webdriver": "7.31.1",
|
|
90
87
|
"ws": "8.13.0",
|
|
91
88
|
"yargs": "17.7.2"
|
|
92
89
|
},
|
|
93
90
|
"devDependencies": {
|
|
94
|
-
"@applitools/bongo": "^5.
|
|
95
|
-
"@applitools/spec-driver-puppeteer": "^1.1.
|
|
96
|
-
"@applitools/spec-driver-selenium": "^1.5.
|
|
97
|
-
"@applitools/spec-driver-webdriverio": "^1.5.10",
|
|
91
|
+
"@applitools/bongo": "^5.6.1",
|
|
92
|
+
"@applitools/spec-driver-puppeteer": "^1.1.74",
|
|
93
|
+
"@applitools/spec-driver-selenium": "^1.5.57",
|
|
98
94
|
"@applitools/test-server": "^1.2.2",
|
|
99
95
|
"@applitools/test-utils": "^1.5.17",
|
|
100
|
-
"@applitools/tunnel-client": "^1.1
|
|
96
|
+
"@applitools/tunnel-client": "^1.2.1",
|
|
101
97
|
"@types/node": "^12.20.55",
|
|
102
98
|
"@types/selenium-webdriver": "^4.1.2",
|
|
103
99
|
"@types/yargs": "^17.0.22",
|
|
104
|
-
"chromedriver": "^
|
|
100
|
+
"chromedriver": "^115.0.1",
|
|
105
101
|
"nock": "^13.3.2",
|
|
106
102
|
"pkg": "^5.8.0",
|
|
107
103
|
"png-async": "^0.9.4",
|
|
108
104
|
"puppeteer": "^19.11.1",
|
|
109
|
-
"selenium-webdriver": "4.4"
|
|
110
|
-
"webdriverio": "^7.25.0"
|
|
105
|
+
"selenium-webdriver": "4.4"
|
|
111
106
|
},
|
|
112
107
|
"engines": {
|
|
113
108
|
"node": ">=12.13.0"
|
package/types/abort.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Eyes, AbortSettings, Renderer } from './types';
|
|
2
|
+
import { type SpecType } from '@applitools/driver';
|
|
3
|
+
import { type Logger } from '@applitools/logger';
|
|
4
|
+
type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
5
|
+
eyes: Eyes<TSpec, TType>;
|
|
6
|
+
renderers?: Renderer[];
|
|
7
|
+
logger: Logger;
|
|
8
|
+
};
|
|
9
|
+
export declare function makeAbort<TSpec extends SpecType, TType extends 'classic' | 'ufg'>({ eyes, renderers: defaultRenderers, logger: mainLogger, }: Options<TSpec, TType>): ({ settings, logger, }?: {
|
|
10
|
+
settings?: AbortSettings<TType> | undefined;
|
|
11
|
+
logger?: Logger | undefined;
|
|
12
|
+
}) => Promise<void>;
|
|
13
|
+
export {};
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import type { AbortSettings } from './types';
|
|
2
|
-
import type { Eyes } from './types';
|
|
1
|
+
import type { DriverTarget, Eyes, AbortSettings, Renderer } from './types';
|
|
3
2
|
import { type Logger } from '@applitools/logger';
|
|
4
|
-
import type
|
|
3
|
+
import { type AbortController } from 'abort-controller';
|
|
5
4
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
6
5
|
type Options<TSpec extends SpecType> = {
|
|
7
6
|
eyes: Eyes<TSpec>;
|
|
8
7
|
target?: DriverTarget<TSpec>;
|
|
8
|
+
controller: AbortController;
|
|
9
|
+
renderers?: Renderer[];
|
|
9
10
|
spec?: SpecDriver<TSpec>;
|
|
10
11
|
logger: Logger;
|
|
11
12
|
};
|
|
12
|
-
export declare function makeAbort<TSpec extends SpecType>({ eyes, target, spec, logger: mainLogger }: Options<TSpec>): ({ settings, logger, }?: {
|
|
13
|
+
export declare function makeAbort<TSpec extends SpecType>({ eyes, target, controller, renderers: defaultRenderers, spec, logger: mainLogger, }: Options<TSpec>): ({ settings, logger, }?: {
|
|
13
14
|
settings?: AbortSettings | undefined;
|
|
14
15
|
logger?: Logger | undefined;
|
|
15
16
|
}) => Promise<void>;
|
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import type { CloseSettings } from '
|
|
2
|
-
import type { Eyes } from './types';
|
|
1
|
+
import type { DriverTarget, Eyes, CloseSettings, Renderer } from '../ufg/types';
|
|
3
2
|
import { type Logger } from '@applitools/logger';
|
|
4
|
-
import type { DriverTarget } from './types';
|
|
5
3
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
6
4
|
type Options<TSpec extends SpecType> = {
|
|
7
5
|
eyes: Eyes<TSpec>;
|
|
8
6
|
target?: DriverTarget<TSpec>;
|
|
7
|
+
renderers?: Renderer[];
|
|
9
8
|
spec?: SpecDriver<TSpec>;
|
|
10
9
|
logger: Logger;
|
|
11
10
|
};
|
|
12
|
-
export declare function makeClose<TSpec extends SpecType>({ eyes, target, spec, logger: mainLogger }: Options<TSpec>): ({ settings, logger, }?: {
|
|
11
|
+
export declare function makeClose<TSpec extends SpecType>({ eyes, target, renderers: defaultRenderers, spec, logger: mainLogger, }: Options<TSpec>): ({ settings, logger, }?: {
|
|
13
12
|
settings?: CloseSettings | undefined;
|
|
14
13
|
logger?: Logger | undefined;
|
|
15
14
|
}) => Promise<void>;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { type SpecType, type Driver } from '@applitools/driver';
|
|
2
2
|
import { type Logger } from '@applitools/logger';
|
|
3
|
-
import { type NMLClient, type
|
|
3
|
+
import { type NMLClient, type NMLClientSettings } from '@applitools/nml-client';
|
|
4
4
|
type Options = {
|
|
5
5
|
client?: NMLClient;
|
|
6
6
|
logger: Logger;
|
|
7
7
|
};
|
|
8
|
-
export declare function makeGetNMLClient({ client, logger: mainLogger }: Options): (({ driver,
|
|
8
|
+
export declare function makeGetNMLClient({ client, logger: mainLogger }: Options): (({ driver, settings, logger, }: {
|
|
9
9
|
driver: Driver<SpecType>;
|
|
10
|
-
|
|
10
|
+
settings: Omit<NMLClientSettings, 'brokerUrl'>;
|
|
11
11
|
logger?: Logger | undefined;
|
|
12
12
|
}) => Promise<NMLClient>) & {
|
|
13
13
|
getCachedValues(): Promise<NMLClient>[];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Eyes, GetResultsSettings, TestResult } from '../ufg/types';
|
|
2
|
+
import { type Logger } from '@applitools/logger';
|
|
3
|
+
type Options = {
|
|
4
|
+
eyes: Eyes<any>;
|
|
5
|
+
logger: Logger;
|
|
6
|
+
};
|
|
7
|
+
export declare function makeGetResults({ eyes, logger: mainLogger }: Options): ({ settings, logger, }?: {
|
|
8
|
+
settings?: GetResultsSettings | undefined;
|
|
9
|
+
logger?: Logger | undefined;
|
|
10
|
+
}) => Promise<TestResult[]>;
|
|
11
|
+
export {};
|
|
@@ -1,11 +1,48 @@
|
|
|
1
1
|
import type { MaybeArray, Size, Region } from '@applitools/utils';
|
|
2
2
|
import type * as BaseCore from '@applitools/core-base/types';
|
|
3
3
|
import { type SpecType, type Driver, type ElementReference, type ContextReference } from '@applitools/driver';
|
|
4
|
+
import { type NMLClient, type NMLClientSettings } from '@applitools/nml-client';
|
|
4
5
|
import { type Logger } from '@applitools/logger';
|
|
5
|
-
import { type NMLClient, type NMLRequestsConfig } from '@applitools/nml-client';
|
|
6
6
|
export type * from '@applitools/core-base/types';
|
|
7
7
|
export type DriverTarget<TSpec extends SpecType> = TSpec['driver'] | Driver<TSpec>;
|
|
8
8
|
export type Target<TSpec extends SpecType> = DriverTarget<TSpec> | BaseCore.Target;
|
|
9
|
+
export interface DesktopBrowserRenderer {
|
|
10
|
+
name?: 'chrome' | 'chrome-one-version-back' | 'chrome-two-versions-back' | 'firefox' | 'firefox-one-version-back' | 'firefox-two-versions-back' | 'safari' | 'safari-earlyaccess' | 'safari-one-version-back' | 'safari-two-versions-back' | 'edgechromium' | 'edgechromium-one-version-back' | 'edgechromium-two-versions-back' | 'edge' | 'edgelegacy' | 'ie' | 'ie10';
|
|
11
|
+
width: number;
|
|
12
|
+
height: number;
|
|
13
|
+
}
|
|
14
|
+
export interface ChromeEmulationDeviceRenderer {
|
|
15
|
+
chromeEmulationInfo: {
|
|
16
|
+
deviceName: 'Kindle Fire HDX' | 'Blackberry PlayBook' | 'BlackBerry Z30' | 'Galaxy Note 2' | 'Galaxy S3' | 'Galaxy Note 3' | 'Galaxy Note 4' | 'Galaxy A5' | 'Galaxy S5' | 'Galaxy S8' | 'Galaxy S8 Plus' | 'Galaxy Note 8' | 'Galaxy S9' | 'Galaxy S9 Plus' | 'Galaxy Note 9' | 'Galaxy S10' | 'Galaxy S10 Plus' | 'Galaxy Note 10' | 'Galaxy Note 10 Plus' | 'Galaxy S20' | 'Galaxy S21' | 'Galaxy S21 Ultra' | 'Galaxy S22' | 'Galaxy S22 Ultra' | 'Galaxy Tab S7' | 'iPhone 4' | 'iPhone 5/SE' | 'iPhone 6/7/8' | 'iPhone 6/7/8 Plus' | 'iPhone X' | 'iPhone XR' | 'iPhone XS' | 'iPhone XS Max' | 'iPhone 11' | 'iPhone 11 Pro' | 'iPhone 11 Pro Max' | 'iPad' | 'iPad 6th Gen' | 'iPad 7th Gen' | 'iPad Air 2' | 'iPad Mini' | 'iPad Pro' | 'LG G6' | 'LG Optimus L70' | 'Nexus 10' | 'Nexus 4' | 'Nexus 5' | 'Nexus 5X' | 'Nexus 6' | 'Nexus 6P' | 'Nexus 7' | 'Pixel 2' | 'Pixel 2 XL' | 'Pixel 3' | 'Pixel 3 XL' | 'Pixel 4' | 'Pixel 4 XL' | 'Pixel 5' | 'Sony Xperia 10 II' | 'Huawei Mate 50 Pro' | 'Huawei Matepad 11' | 'OnePlus 7T' | 'OnePlus 7T Pro' | 'Nokia N9' | 'Nokia Lumia 520' | 'Microsoft Lumia 550' | 'Microsoft Lumia 950' | 'Laptop with HiDPI screen' | 'Laptop with MDPI screen' | 'Laptop with touch';
|
|
17
|
+
screenOrientation?: 'portrait' | 'landscape';
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export interface IOSDeviceRenderer {
|
|
21
|
+
iosDeviceInfo: {
|
|
22
|
+
deviceName: 'iPhone 6s' | 'iPhone 6s Plus' | 'iPhone 7' | 'iPhone 7 Plus' | 'iPhone 8' | 'iPhone 8 Plus' | 'iPhone X' | 'iPhone XR' | 'iPhone Xs' | 'iPhone Xs Max' | 'iPhone 11' | 'iPhone 11 Pro' | 'iPhone 11 Pro Max' | 'iPhone 12' | 'iPhone 12 mini' | 'iPhone 12 Pro' | 'iPhone 12 Pro Max' | 'iPhone 13' | 'iPhone 13 mini' | 'iPhone 13 Pro' | 'iPhone 13 Pro Max' | 'iPhone 14' | 'iPhone 14 Plus' | 'iPhone 14 Pro' | 'iPhone 14 Pro Max' | 'iPhone SE (1st generation)' | 'iPhone SE (2nd generation)' | 'iPhone SE (3rd generation)' | 'iPad (5th generation)' | 'iPad (6th generation)' | 'iPad (7th generation)' | 'iPad (8th generation)' | 'iPad (9th generation)' | 'iPad (10th generation)' | 'iPad Air 2' | 'iPad Air (3rd generation)' | 'iPad Air (4th generation)' | 'iPad Air (5th generation)' | 'iPad mini 4' | 'iPad mini (5th generation)' | 'iPad mini (6th generation)' | 'iPad Pro (9.7-inch)' | 'iPad Pro (10.5-inch)' | 'iPad Pro (11-inch) (1st generation)' | 'iPad Pro (12.9-inch) (1st generation)' | 'iPad Pro (11-inch) (2nd generation)' | 'iPad Pro (12.9-inch) (2nd generation)' | 'iPad Pro (11-inch) (3rd generation)' | 'iPad Pro (12.9-inch) (3rd generation)' | 'iPad Pro (11-inch) (4th generation)' | 'iPad Pro (12.9-inch) (4th generation)' | 'iPad Pro (12.9-inch) (5th generation)' | 'iPad Pro (12.9-inch) (6th generation)' | 'iPod touch (7th generation)';
|
|
23
|
+
version?: string;
|
|
24
|
+
screenOrientation?: 'portrait' | 'landscape';
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export interface AndroidDeviceRenderer {
|
|
28
|
+
androidDeviceInfo: {
|
|
29
|
+
deviceName: 'Pixel 3 XL' | 'Pixel 4' | 'Pixel 4 XL' | 'Pixel 5' | 'Pixel 6' | 'Galaxy S10' | 'Galaxy S10 Plus' | 'Galaxy Note 10' | 'Galaxy Note 10 Plus' | 'Galaxy S20' | 'Galaxy S20 Plus' | 'Galaxy S21' | 'Galaxy S21 Plus' | 'Galaxy S21 Ultra' | 'Galaxy S22' | 'Galaxy S22 Plus' | 'Galaxy Tab S7' | 'Galaxy Tab S8' | 'Xiaomi Redmi Note 10 JE' | 'Xiaomi Redmi Note 11' | 'Xiaomi Redmi Note 11 Pro' | 'Sony Xperia 1 II' | 'Sony Xperia 10 II' | 'Sony Xperia Ace II' | 'Huawei P30 Lite';
|
|
30
|
+
version?: string;
|
|
31
|
+
screenOrientation?: 'portrait' | 'landscape';
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export interface EnvironmentRenderer {
|
|
35
|
+
environment: BaseCore.Environment;
|
|
36
|
+
}
|
|
37
|
+
export type Renderer = (DesktopBrowserRenderer | ChromeEmulationDeviceRenderer | IOSDeviceRenderer | AndroidDeviceRenderer | EnvironmentRenderer) & {
|
|
38
|
+
properties?: BaseCore.CustomProperty[];
|
|
39
|
+
/**
|
|
40
|
+
* The id of the renderer
|
|
41
|
+
* Used to identify the renderer if the same renderer is used multiple times
|
|
42
|
+
* @internal
|
|
43
|
+
**/
|
|
44
|
+
id?: string;
|
|
45
|
+
};
|
|
9
46
|
export interface Core<TSpec extends SpecType> extends BaseCore.Core {
|
|
10
47
|
readonly base: BaseCore.Core;
|
|
11
48
|
getViewportSize?(options: {
|
|
@@ -18,14 +55,14 @@ export interface Core<TSpec extends SpecType> extends BaseCore.Core {
|
|
|
18
55
|
logger?: Logger;
|
|
19
56
|
}): Promise<void>;
|
|
20
57
|
getNMLClient(options: {
|
|
21
|
-
|
|
58
|
+
settings: Omit<NMLClientSettings, 'brokerUrl'>;
|
|
22
59
|
driver: Driver<TSpec>;
|
|
23
60
|
logger?: Logger;
|
|
24
61
|
}): Promise<NMLClient>;
|
|
25
62
|
openEyes(options: {
|
|
26
63
|
target?: DriverTarget<TSpec>;
|
|
27
64
|
settings: BaseCore.OpenSettings;
|
|
28
|
-
|
|
65
|
+
storage?: EyesStorage;
|
|
29
66
|
logger?: Logger;
|
|
30
67
|
}): Promise<Eyes<TSpec>>;
|
|
31
68
|
locate<TLocator extends string>(options: {
|
|
@@ -46,19 +83,41 @@ export interface Core<TSpec extends SpecType> extends BaseCore.Core {
|
|
|
46
83
|
}
|
|
47
84
|
export interface Eyes<TSpec extends SpecType> extends BaseCore.Eyes {
|
|
48
85
|
readonly core: Core<TSpec>;
|
|
49
|
-
|
|
86
|
+
readonly storage: EyesStorage;
|
|
87
|
+
getBaseEyes(options: {
|
|
88
|
+
settings: GetBaseEyesSettings;
|
|
50
89
|
logger?: Logger;
|
|
51
|
-
}): Promise<BaseCore.Eyes
|
|
90
|
+
}): Promise<BaseCore.Eyes>;
|
|
52
91
|
check(options?: {
|
|
53
92
|
target?: Target<TSpec>;
|
|
54
93
|
settings?: CheckSettings<TSpec>;
|
|
55
94
|
logger?: Logger;
|
|
56
|
-
}): Promise<
|
|
95
|
+
}): Promise<void>;
|
|
57
96
|
checkAndClose(options?: {
|
|
58
97
|
target?: Target<TSpec>;
|
|
59
98
|
settings?: CheckSettings<TSpec> & BaseCore.CloseSettings;
|
|
60
99
|
logger?: Logger;
|
|
61
100
|
}): Promise<void>;
|
|
101
|
+
close(options?: {
|
|
102
|
+
settings?: CloseSettings;
|
|
103
|
+
logger?: Logger;
|
|
104
|
+
}): Promise<void>;
|
|
105
|
+
abort(options?: {
|
|
106
|
+
settings?: AbortSettings;
|
|
107
|
+
logger?: Logger;
|
|
108
|
+
}): Promise<void>;
|
|
109
|
+
getResults(options?: {
|
|
110
|
+
settings?: BaseCore.GetResultsSettings;
|
|
111
|
+
logger?: Logger;
|
|
112
|
+
}): Promise<TestResult[]>;
|
|
113
|
+
}
|
|
114
|
+
export type EyesStorage = Map<string, {
|
|
115
|
+
renderer?: Renderer;
|
|
116
|
+
eyes: Promise<BaseCore.Eyes>;
|
|
117
|
+
jobs: Promise<void>[];
|
|
118
|
+
}>;
|
|
119
|
+
export interface GetBaseEyesSettings {
|
|
120
|
+
renderer: Renderer;
|
|
62
121
|
}
|
|
63
122
|
export interface ScreenshotSettings<TSpec extends SpecType> extends BaseCore.ImageSettings<Region | ElementReference<TSpec>> {
|
|
64
123
|
webview?: boolean | string;
|
|
@@ -83,8 +142,20 @@ export interface ScreenshotSettings<TSpec extends SpecType> extends BaseCore.Ima
|
|
|
83
142
|
waitingTime?: number;
|
|
84
143
|
maxAmountToScroll?: number;
|
|
85
144
|
};
|
|
145
|
+
sendDom?: boolean;
|
|
86
146
|
}
|
|
87
147
|
export type LocateSettings<TLocator extends string, TSpec extends SpecType> = BaseCore.LocateSettings<TLocator, Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
|
|
88
148
|
export type LocateTextSettings<TPattern extends string, TSpec extends SpecType> = BaseCore.LocateTextSettings<TPattern, Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
|
|
89
149
|
export type ExtractTextSettings<TSpec extends SpecType> = BaseCore.ExtractTextSettings<Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec>;
|
|
90
|
-
export type CheckSettings<TSpec extends SpecType> = BaseCore.CheckSettings<Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec
|
|
150
|
+
export type CheckSettings<TSpec extends SpecType> = BaseCore.CheckSettings<Region | ElementReference<TSpec>> & ScreenshotSettings<TSpec> & {
|
|
151
|
+
renderers?: Renderer[];
|
|
152
|
+
};
|
|
153
|
+
export type CloseSettings = BaseCore.CloseSettings & {
|
|
154
|
+
renderers?: Renderer[];
|
|
155
|
+
};
|
|
156
|
+
export type AbortSettings = BaseCore.AbortSettings & {
|
|
157
|
+
renderers?: Renderer[];
|
|
158
|
+
};
|
|
159
|
+
export type TestResult = BaseCore.TestResult & {
|
|
160
|
+
readonly renderer: Renderer;
|
|
161
|
+
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { Renderer } from '../types';
|
|
2
2
|
export declare function uniquifyRenderers<TRenderer extends Renderer>(renderers: TRenderer[]): TRenderer[];
|
package/types/check.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Target, DriverTarget, Eyes, Config, CheckSettings
|
|
1
|
+
import type { Target, DriverTarget, Eyes, Config, CheckSettings } from './types';
|
|
2
2
|
import { type Logger } from '@applitools/logger';
|
|
3
3
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
4
4
|
type Options<TSpec extends SpecType, TType extends 'classic' | 'ufg'> = {
|
|
@@ -14,5 +14,5 @@ export declare function makeCheck<TSpec extends SpecType, TDefaultType extends '
|
|
|
14
14
|
settings?: CheckSettings<TSpec, TType> | undefined;
|
|
15
15
|
config?: Config<TSpec, TType> | undefined;
|
|
16
16
|
logger?: Logger | undefined;
|
|
17
|
-
}) => Promise<
|
|
17
|
+
}) => Promise<void>;
|
|
18
18
|
export {};
|
|
@@ -1,19 +1,26 @@
|
|
|
1
|
-
import type { Target, DriverTarget, Eyes, CheckSettings, CloseSettings } from './types';
|
|
2
|
-
import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
|
|
1
|
+
import type { Target, DriverTarget, Eyes, CheckSettings, CloseSettings, Renderer } from './types';
|
|
2
|
+
import type { CheckSettings as BaseCheckSettings, CloseSettings as BaseCloseSettings } from '@applitools/core-base';
|
|
3
|
+
import { type AbortSignal } from 'abort-controller';
|
|
3
4
|
import { type Logger } from '@applitools/logger';
|
|
4
5
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
5
6
|
import * as utils from '@applitools/utils';
|
|
6
7
|
type Options<TSpec extends SpecType> = {
|
|
7
8
|
eyes: Eyes<TSpec>;
|
|
8
9
|
target?: DriverTarget<TSpec>;
|
|
10
|
+
renderers?: Renderer[];
|
|
9
11
|
spec?: SpecDriver<TSpec>;
|
|
12
|
+
signal?: AbortSignal;
|
|
10
13
|
logger: Logger;
|
|
11
14
|
};
|
|
12
|
-
export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes, target: defaultTarget, spec, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
|
|
15
|
+
export declare function makeCheckAndClose<TSpec extends SpecType>({ eyes, target: defaultTarget, renderers: defaultRenderers, spec, signal, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
|
|
13
16
|
target?: Target<TSpec> | undefined;
|
|
14
17
|
settings?: (BaseCheckSettings<utils.Region | import("@applitools/driver").ElementReference<TSpec>> & import("./types").ScreenshotSettings<TSpec> & {
|
|
18
|
+
renderers?: Renderer[] | undefined;
|
|
19
|
+
} & {
|
|
15
20
|
retryTimeout?: number | undefined;
|
|
16
|
-
} &
|
|
21
|
+
} & BaseCloseSettings & {
|
|
22
|
+
renderers?: Renderer[] | undefined;
|
|
23
|
+
}) | undefined;
|
|
17
24
|
logger?: Logger | undefined;
|
|
18
25
|
}) => Promise<void>;
|
|
19
26
|
export {};
|
package/types/classic/check.d.ts
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import type { Target, DriverTarget, Eyes, CheckSettings,
|
|
1
|
+
import type { Target, DriverTarget, Eyes, CheckSettings, Renderer } from './types';
|
|
2
|
+
import { type AbortSignal } from 'abort-controller';
|
|
2
3
|
import { type Logger } from '@applitools/logger';
|
|
3
4
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
4
5
|
type Options<TSpec extends SpecType> = {
|
|
5
6
|
eyes: Eyes<TSpec>;
|
|
6
7
|
target?: DriverTarget<TSpec>;
|
|
8
|
+
renderers?: Renderer[];
|
|
7
9
|
spec?: SpecDriver<TSpec>;
|
|
10
|
+
signal?: AbortSignal;
|
|
8
11
|
logger: Logger;
|
|
9
12
|
};
|
|
10
|
-
export declare function makeCheck<TSpec extends SpecType>({ eyes, target: defaultTarget, spec, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
|
|
13
|
+
export declare function makeCheck<TSpec extends SpecType>({ eyes, target: defaultTarget, renderers: defaultRenderers, spec, signal, logger: mainLogger, }: Options<TSpec>): ({ target, settings, logger, }?: {
|
|
11
14
|
target?: Target<TSpec> | undefined;
|
|
12
15
|
settings?: CheckSettings<TSpec> | undefined;
|
|
13
16
|
logger?: Logger | undefined;
|
|
14
|
-
}) => Promise<
|
|
17
|
+
}) => Promise<void>;
|
|
15
18
|
export {};
|
package/types/classic/core.d.ts
CHANGED
|
@@ -9,9 +9,10 @@ type Options<TSpec extends SpecType> = {
|
|
|
9
9
|
nml?: NMLClient;
|
|
10
10
|
};
|
|
11
11
|
base?: BaseCore;
|
|
12
|
+
concurrency?: number;
|
|
12
13
|
agentId?: string;
|
|
13
14
|
cwd?: string;
|
|
14
15
|
logger?: Logger;
|
|
15
16
|
};
|
|
16
|
-
export declare function makeCore<TSpec extends SpecType>({ spec, clients, base, agentId, cwd, logger: defaultLogger, }: Options<TSpec>): Core<TSpec>;
|
|
17
|
+
export declare function makeCore<TSpec extends SpecType>({ spec, clients, base, concurrency, agentId, cwd, logger: defaultLogger, }: Options<TSpec>): Core<TSpec>;
|
|
17
18
|
export {};
|
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
import type { Eyes, OpenSettings } from './types';
|
|
1
|
+
import type { Eyes, GetBaseEyesSettings, OpenSettings } from './types';
|
|
2
2
|
import type { Eyes as BaseEyes } from '@applitools/core-base';
|
|
3
3
|
import { type SpecType } from '@applitools/driver';
|
|
4
4
|
import { type Logger } from '@applitools/logger';
|
|
5
5
|
type Options<TSpec extends SpecType> = {
|
|
6
6
|
settings: OpenSettings;
|
|
7
7
|
eyes: Eyes<TSpec>;
|
|
8
|
-
base?: BaseEyes[];
|
|
9
8
|
logger: Logger;
|
|
10
9
|
};
|
|
11
|
-
export declare function makeGetBaseEyes<TSpec extends SpecType>({ settings, eyes,
|
|
10
|
+
export declare function makeGetBaseEyes<TSpec extends SpecType>({ settings: defaultSettings, eyes, logger: mainLogger, }: Options<TSpec>): ({ settings, logger, }: {
|
|
11
|
+
settings: GetBaseEyesSettings;
|
|
12
12
|
logger?: Logger | undefined;
|
|
13
|
-
}) => Promise<BaseEyes
|
|
14
|
-
getCachedValues(): Promise<BaseEyes[]>[];
|
|
15
|
-
setCachedValue(key: any, value: Promise<BaseEyes[]>): void;
|
|
16
|
-
clearCache(): void;
|
|
17
|
-
};
|
|
13
|
+
}) => Promise<BaseEyes>;
|
|
18
14
|
export {};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { Eyes as BaseEyes } from '@applitools/core-base';
|
|
1
|
+
import type { DriverTarget, Core, Eyes, EyesStorage, OpenSettings } from './types';
|
|
3
2
|
import { type Logger } from '@applitools/logger';
|
|
4
3
|
import { type SpecType, type SpecDriver } from '@applitools/driver';
|
|
5
4
|
type Options<TSpec extends SpecType> = {
|
|
@@ -7,10 +6,10 @@ type Options<TSpec extends SpecType> = {
|
|
|
7
6
|
spec?: SpecDriver<TSpec>;
|
|
8
7
|
logger: Logger;
|
|
9
8
|
};
|
|
10
|
-
export declare function makeOpenEyes<TSpec extends SpecType>({ core, spec, logger: mainLogger }: Options<TSpec>): ({ target, settings,
|
|
9
|
+
export declare function makeOpenEyes<TSpec extends SpecType>({ core, spec, logger: mainLogger }: Options<TSpec>): ({ target, settings, storage, logger, }: {
|
|
11
10
|
target?: DriverTarget<TSpec> | undefined;
|
|
12
11
|
settings: OpenSettings;
|
|
13
|
-
|
|
12
|
+
storage?: EyesStorage | undefined;
|
|
14
13
|
logger?: Logger | undefined;
|
|
15
14
|
}) => Promise<Eyes<TSpec>>;
|
|
16
15
|
export {};
|