@applitools/core 1.4.9 → 1.4.10
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/dist/automation/get-viewport-size.js +1 -1
- package/dist/automation/locate.js +1 -1
- package/dist/automation/set-viewport-size.js +1 -1
- package/dist/check.js +4 -1
- package/dist/classic/abort.js +3 -3
- package/dist/classic/close.js +2 -2
- package/dist/classic/core.js +0 -4
- package/dist/{automation → classic}/extract-text.js +9 -6
- package/dist/{automation → classic}/locate-text.js +8 -5
- package/dist/classic/open-eyes.js +5 -1
- package/dist/{get-manager-results.js → close-manager.js} +9 -7
- package/dist/close.js +25 -1
- package/dist/core.js +0 -4
- package/dist/errors/abort-error.js +1 -5
- package/dist/extract-text.js +17 -13
- package/dist/get-typed-eyes.js +2 -4
- package/dist/index.js +3 -3
- package/dist/locate-text.js +7 -33
- package/dist/locate.js +1 -1
- package/dist/make-manager.js +28 -5
- package/dist/open-eyes.js +5 -3
- package/dist/types.js +1 -0
- package/dist/ufg/abort.js +19 -11
- package/dist/ufg/check-and-close.js +4 -4
- package/dist/ufg/check.js +9 -11
- package/dist/ufg/close.js +18 -17
- package/dist/ufg/core.js +0 -4
- package/dist/ufg/open-eyes.js +25 -13
- package/package.json +9 -11
- package/types/automation/get-viewport-size.d.ts +5 -5
- package/types/automation/locate.d.ts +6 -6
- package/types/automation/set-viewport-size.d.ts +5 -5
- package/types/automation/types.d.ts +40 -36
- package/types/automation/utils/take-screenshot.d.ts +9 -9
- package/types/automation/utils/to-base-check-settings.d.ts +13 -6
- package/types/automation/utils/wait-for-lazy-load.d.ts +3 -3
- package/types/check-and-close.d.ts +11 -9
- package/types/check.d.ts +9 -9
- package/types/classic/abort.d.ts +8 -8
- package/types/classic/check-and-close.d.ts +9 -9
- package/types/classic/check.d.ts +9 -9
- package/types/classic/close.d.ts +8 -8
- package/types/classic/core.d.ts +4 -4
- package/types/classic/extract-text.d.ts +16 -0
- package/types/classic/locate-text.d.ts +15 -0
- package/types/classic/open-eyes.d.ts +6 -6
- package/types/classic/types.d.ts +7 -7
- package/types/classic/utils/take-dom-capture.d.ts +3 -3
- package/types/close-manager.d.ts +18 -0
- package/types/close.d.ts +6 -7
- package/types/core.d.ts +4 -4
- package/types/errors/abort-error.d.ts +1 -3
- package/types/extract-text.d.ts +8 -10
- package/types/get-typed-eyes.d.ts +5 -6
- package/types/index.d.ts +3 -3
- package/types/locate-text.d.ts +8 -10
- package/types/locate.d.ts +8 -8
- package/types/make-manager.d.ts +5 -5
- package/types/open-eyes.d.ts +9 -9
- package/types/types.d.ts +84 -62
- package/types/ufg/abort.d.ts +16 -8
- package/types/ufg/check-and-close.d.ts +9 -9
- package/types/ufg/check.d.ts +9 -9
- package/types/ufg/close.d.ts +17 -8
- package/types/ufg/core.d.ts +4 -4
- package/types/ufg/open-eyes.d.ts +6 -6
- package/types/ufg/types.d.ts +17 -13
- package/types/ufg/utils/extract-broker-url.d.ts +3 -3
- package/types/ufg/utils/generate-safe-selectors.d.ts +8 -8
- package/types/ufg/utils/take-dom-snapshot.d.ts +3 -3
- package/types/ufg/utils/take-dom-snapshots.d.ts +3 -3
- package/types/ufg/utils/take-snapshots.d.ts +3 -3
- package/types/ufg/utils/take-vhses.d.ts +3 -3
- package/dist/get-eyes-results.js +0 -18
- package/dist/ufg/get-results.js +0 -27
- package/types/automation/extract-text.d.ts +0 -16
- package/types/automation/locate-text.d.ts +0 -15
- package/types/get-eyes-results.d.ts +0 -12
- package/types/get-manager-results.d.ts +0 -14
- package/types/ufg/get-results.d.ts +0 -11
package/dist/ufg/check.js
CHANGED
|
@@ -39,9 +39,9 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
39
39
|
function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger: defaultLogger, }) {
|
|
40
40
|
return async function check({ target = defaultTarget, settings = {}, logger = defaultLogger, }) {
|
|
41
41
|
var _a, _b, _c, _d, _e;
|
|
42
|
-
logger.log('Command "check" is called with settings', settings);
|
|
42
|
+
logger === null || logger === void 0 ? void 0 : logger.log('Command "check" is called with settings', settings);
|
|
43
43
|
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
44
|
-
logger.warn('Command "check" was called after test was already aborted');
|
|
44
|
+
logger === null || logger === void 0 ? void 0 : logger.warn('Command "check" was called after test was already aborted');
|
|
45
45
|
throw new abort_error_1.AbortError('Command "check" was called after test was already aborted');
|
|
46
46
|
}
|
|
47
47
|
const { elementReferencesToCalculate, elementReferenceToTarget, getBaseCheckSettings } = (0, to_base_check_settings_1.toBaseCheckSettings)({
|
|
@@ -132,11 +132,11 @@ function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger:
|
|
|
132
132
|
const promises = uniqueRenderers.map(async (renderer, index) => {
|
|
133
133
|
if (utils.types.has(renderer, 'name') && renderer.name === 'edge') {
|
|
134
134
|
const message = chalk_1.default.yellow(`The 'edge' option that is being used in your browsers' configuration will soon be deprecated. Please change it to either 'edgelegacy' for the legacy version or to 'edgechromium' for the new Chromium-based version. Please note, when using the built-in BrowserType enum, then the values are BrowserType.EDGE_LEGACY and BrowserType.EDGE_CHROMIUM, respectively.`);
|
|
135
|
-
logger.console.log(message);
|
|
135
|
+
logger === null || logger === void 0 ? void 0 : logger.console.log(message);
|
|
136
136
|
}
|
|
137
137
|
try {
|
|
138
138
|
if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
|
|
139
|
-
logger.warn('Command "check" was aborted before rendering');
|
|
139
|
+
logger === null || logger === void 0 ? void 0 : logger.warn('Command "check" was aborted before rendering');
|
|
140
140
|
throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
|
|
141
141
|
}
|
|
142
142
|
const { cookies, ...snapshot } = snapshots[index];
|
|
@@ -158,7 +158,7 @@ function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger:
|
|
|
158
158
|
logger.warn('Command "check" was aborted before rendering');
|
|
159
159
|
throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
|
|
160
160
|
}
|
|
161
|
-
else if (
|
|
161
|
+
else if (baseEyes.aborted) {
|
|
162
162
|
logger.warn(`Renderer with id ${baseEyes.test.rendererId} was aborted during one of the previous steps`);
|
|
163
163
|
throw new abort_error_1.AbortError(`Renderer with id "${baseEyes.test.rendererId}" was aborted during one of the previous steps`);
|
|
164
164
|
}
|
|
@@ -167,7 +167,7 @@ function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger:
|
|
|
167
167
|
logger.warn('Command "check" was aborted before rendering');
|
|
168
168
|
throw new abort_error_1.AbortError('Command "check" was aborted before rendering');
|
|
169
169
|
}
|
|
170
|
-
else if (
|
|
170
|
+
else if (baseEyes.aborted) {
|
|
171
171
|
logger.warn(`Renderer with id ${baseEyes.test.rendererId} was aborted during one of the previous steps`);
|
|
172
172
|
throw new abort_error_1.AbortError(`Renderer with id "${baseEyes.test.rendererId}" was aborted during one of the previous steps`);
|
|
173
173
|
}
|
|
@@ -198,7 +198,7 @@ function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger:
|
|
|
198
198
|
logger.warn('Command "check" was aborted after rendering');
|
|
199
199
|
throw new abort_error_1.AbortError('Command "check" was aborted after rendering');
|
|
200
200
|
}
|
|
201
|
-
else if (
|
|
201
|
+
else if (baseEyes.aborted) {
|
|
202
202
|
logger.warn(`Renderer with id ${baseEyes.test.rendererId} was aborted during one of the previous steps`);
|
|
203
203
|
throw new abort_error_1.AbortError(`Renderer with id "${baseEyes.test.rendererId}" was aborted during one of the previous steps`);
|
|
204
204
|
}
|
|
@@ -207,16 +207,14 @@ function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger:
|
|
|
207
207
|
settings: baseSettings,
|
|
208
208
|
logger,
|
|
209
209
|
});
|
|
210
|
-
if (
|
|
210
|
+
if (baseEyes.aborted) {
|
|
211
211
|
logger.warn(`Renderer with id ${baseEyes.test.rendererId} was aborted during one of the previous steps`);
|
|
212
212
|
throw new abort_error_1.AbortError(`Renderer with id "${baseEyes.test.rendererId}" was aborted during one of the previous steps`);
|
|
213
213
|
}
|
|
214
214
|
return { ...result, eyes: baseEyes, renderer };
|
|
215
215
|
}
|
|
216
216
|
catch (error) {
|
|
217
|
-
|
|
218
|
-
await baseEyes.abort({ settings: { testMetadata: await (driver === null || driver === void 0 ? void 0 : driver.getSessionMetadata()) } });
|
|
219
|
-
}
|
|
217
|
+
await baseEyes.abort({ settings: { testMetadata: await (driver === null || driver === void 0 ? void 0 : driver.getSessionMetadata()) } });
|
|
220
218
|
error.info = { eyes: baseEyes };
|
|
221
219
|
throw error;
|
|
222
220
|
}
|
package/dist/ufg/close.js
CHANGED
|
@@ -2,28 +2,29 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeClose = void 0;
|
|
4
4
|
const driver_1 = require("@applitools/driver");
|
|
5
|
-
function makeClose({ storage, target, spec, logger: defaultLogger }) {
|
|
6
|
-
return async function
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
function makeClose({ storage, target, spec, logger: defaultLogger, }) {
|
|
6
|
+
return async function ({ settings, logger = defaultLogger, } = {}) {
|
|
7
|
+
const tests = storage.reduce((tests, { renderer, promise }) => {
|
|
8
|
+
var _a;
|
|
9
|
+
const key = JSON.stringify(renderer);
|
|
10
|
+
const promises = (_a = tests.get(key)) !== null && _a !== void 0 ? _a : [];
|
|
11
|
+
promises.push(promise);
|
|
12
|
+
return tests.set(key, promises);
|
|
13
|
+
}, new Map());
|
|
14
|
+
return Promise.all(Array.from(tests.values(), async (promises) => {
|
|
11
15
|
var _a, _b;
|
|
12
16
|
try {
|
|
13
|
-
const [{ eyes }] = await Promise.all(promises);
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
logger.warn('Command "close" received an error during performing, trying to perform abort instead', error);
|
|
19
|
-
await eyes.abort({ settings: { ...settings, testMetadata }, logger });
|
|
20
|
-
}
|
|
17
|
+
const [{ eyes, renderer }] = await Promise.all(promises);
|
|
18
|
+
const driver = (0, driver_1.isDriver)(target, spec) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : null;
|
|
19
|
+
const testMetadata = await (driver === null || driver === void 0 ? void 0 : driver.getSessionMetadata());
|
|
20
|
+
const [result] = await eyes.close({ settings: { ...settings, testMetadata }, logger });
|
|
21
|
+
return { ...result, renderer };
|
|
21
22
|
}
|
|
22
23
|
catch (error) {
|
|
23
|
-
|
|
24
|
-
|
|
24
|
+
await ((_b = (_a = error.info) === null || _a === void 0 ? void 0 : _a.eyes) === null || _b === void 0 ? void 0 : _b.abort({ logger }));
|
|
25
|
+
throw error;
|
|
25
26
|
}
|
|
26
|
-
});
|
|
27
|
+
}));
|
|
27
28
|
};
|
|
28
29
|
}
|
|
29
30
|
exports.makeClose = makeClose;
|
package/dist/ufg/core.js
CHANGED
|
@@ -32,8 +32,6 @@ const core_base_1 = require("@applitools/core-base");
|
|
|
32
32
|
const get_viewport_size_1 = require("../automation/get-viewport-size");
|
|
33
33
|
const set_viewport_size_1 = require("../automation/set-viewport-size");
|
|
34
34
|
const locate_1 = require("../automation/locate");
|
|
35
|
-
const locate_text_1 = require("../automation/locate-text");
|
|
36
|
-
const extract_text_1 = require("../automation/extract-text");
|
|
37
35
|
const open_eyes_1 = require("./open-eyes");
|
|
38
36
|
const utils = __importStar(require("@applitools/utils"));
|
|
39
37
|
const throat_1 = __importDefault(require("throat"));
|
|
@@ -76,8 +74,6 @@ function makeCore({ concurrency, spec, client, core, agentId = 'core-ufg', cwd =
|
|
|
76
74
|
getViewportSize: spec && (0, get_viewport_size_1.makeGetViewportSize)({ spec, logger }),
|
|
77
75
|
setViewportSize: spec && (0, set_viewport_size_1.makeSetViewportSize)({ spec, logger }),
|
|
78
76
|
locate: (0, locate_1.makeLocate)({ spec, core, logger }),
|
|
79
|
-
locateText: (0, locate_text_1.makeLocateText)({ spec, core, logger }),
|
|
80
|
-
extractText: (0, extract_text_1.makeExtractText)({ spec, core, logger }),
|
|
81
77
|
openEyes: (0, open_eyes_1.makeOpenEyes)({ spec, client, core, logger }),
|
|
82
78
|
});
|
|
83
79
|
}
|
package/dist/ufg/open-eyes.js
CHANGED
|
@@ -31,10 +31,9 @@ const check_1 = require("./check");
|
|
|
31
31
|
const check_and_close_1 = require("./check-and-close");
|
|
32
32
|
const close_1 = require("./close");
|
|
33
33
|
const abort_1 = require("./abort");
|
|
34
|
-
const get_results_1 = require("./get-results");
|
|
35
34
|
const abort_controller_1 = require("abort-controller");
|
|
36
35
|
const utils = __importStar(require("@applitools/utils"));
|
|
37
|
-
function makeOpenEyes({ core, client, spec, logger: defaultLogger }) {
|
|
36
|
+
function makeOpenEyes({ core, client, spec, logger: defaultLogger, }) {
|
|
38
37
|
return async function openEyes({ target, settings, eyes, logger = defaultLogger, }) {
|
|
39
38
|
var _a, _b;
|
|
40
39
|
logger.log(`Command "openEyes" is called with ${target ? 'default driver and' : ''}`, ...(settings ? ['settings', settings] : []), eyes ? 'predefined eyes' : '');
|
|
@@ -60,8 +59,9 @@ function makeOpenEyes({ core, client, spec, logger: defaultLogger }) {
|
|
|
60
59
|
const getBaseEyes = (0, get_base_eyes_1.makeGetBaseEyes)({ settings, eyes, core, client, logger });
|
|
61
60
|
return utils.general.extend({}, eyes => {
|
|
62
61
|
var _a;
|
|
63
|
-
const storage =
|
|
64
|
-
let
|
|
62
|
+
const storage = [];
|
|
63
|
+
let closed = false;
|
|
64
|
+
let aborted = false;
|
|
65
65
|
return {
|
|
66
66
|
type: 'ufg',
|
|
67
67
|
test: {
|
|
@@ -72,17 +72,22 @@ function makeOpenEyes({ core, client, spec, logger: defaultLogger }) {
|
|
|
72
72
|
account,
|
|
73
73
|
},
|
|
74
74
|
get running() {
|
|
75
|
-
return
|
|
75
|
+
return !closed && !aborted;
|
|
76
|
+
},
|
|
77
|
+
get closed() {
|
|
78
|
+
return closed;
|
|
79
|
+
},
|
|
80
|
+
get aborted() {
|
|
81
|
+
return aborted;
|
|
76
82
|
},
|
|
77
83
|
getBaseEyes,
|
|
78
84
|
// check with indexing and storage
|
|
79
85
|
check: utils.general.wrap((0, check_1.makeCheck)({ eyes, client: client, target: driver, spec, signal: controller.signal, logger }), async (check, options = {}) => {
|
|
80
86
|
const results = await check(options);
|
|
81
|
-
results.
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
});
|
|
87
|
+
storage.push(...results.map(result => ({
|
|
88
|
+
promise: result.promise,
|
|
89
|
+
renderer: result.renderer,
|
|
90
|
+
})));
|
|
86
91
|
return results;
|
|
87
92
|
}),
|
|
88
93
|
checkAndClose: (0, check_and_close_1.makeCheckAndClose)({
|
|
@@ -93,15 +98,22 @@ function makeOpenEyes({ core, client, spec, logger: defaultLogger }) {
|
|
|
93
98
|
signal: controller.signal,
|
|
94
99
|
logger,
|
|
95
100
|
}),
|
|
101
|
+
locateText: null,
|
|
102
|
+
extractText: null,
|
|
103
|
+
// close only once
|
|
96
104
|
close: utils.general.wrap((0, close_1.makeClose)({ storage, target: driver, logger }), async (close, options) => {
|
|
97
|
-
|
|
105
|
+
if (closed || aborted)
|
|
106
|
+
return [];
|
|
107
|
+
closed = true;
|
|
98
108
|
return close(options);
|
|
99
109
|
}),
|
|
110
|
+
// abort only once
|
|
100
111
|
abort: utils.general.wrap((0, abort_1.makeAbort)({ storage, target: driver, spec, controller, logger }), async (abort, options) => {
|
|
101
|
-
|
|
112
|
+
if (aborted || closed)
|
|
113
|
+
return [];
|
|
114
|
+
aborted = true;
|
|
102
115
|
return abort(options);
|
|
103
116
|
}),
|
|
104
|
-
getResults: (0, get_results_1.makeGetResults)({ storage, logger }),
|
|
105
117
|
};
|
|
106
118
|
});
|
|
107
119
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/core",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.10",
|
|
4
4
|
"homepage": "https://applitools.com",
|
|
5
5
|
"bugs": {
|
|
6
6
|
"url": "https://github.com/applitools/eyes.sdk.javascript1/issues"
|
|
@@ -51,19 +51,17 @@
|
|
|
51
51
|
"docker:setup": "node ../../scripts/generate-docker-compose-config.js && docker-compose up -d",
|
|
52
52
|
"docker:teardown": "docker-compose down",
|
|
53
53
|
"deps": "bongo deps",
|
|
54
|
-
"
|
|
55
|
-
"version": "bongo version",
|
|
56
|
-
"postversion": "bongo postversion --skip-release-notification"
|
|
54
|
+
"version": "bongo version"
|
|
57
55
|
},
|
|
58
56
|
"dependencies": {
|
|
59
|
-
"@applitools/core-base": "1.1.
|
|
57
|
+
"@applitools/core-base": "1.1.33",
|
|
60
58
|
"@applitools/dom-capture": "11.2.1",
|
|
61
59
|
"@applitools/dom-snapshot": "4.7.3",
|
|
62
|
-
"@applitools/driver": "1.11.
|
|
60
|
+
"@applitools/driver": "1.11.28",
|
|
63
61
|
"@applitools/logger": "1.1.45",
|
|
64
|
-
"@applitools/nml-client": "1.3.
|
|
62
|
+
"@applitools/nml-client": "1.3.31",
|
|
65
63
|
"@applitools/req": "1.1.30",
|
|
66
|
-
"@applitools/screenshoter": "3.7.
|
|
64
|
+
"@applitools/screenshoter": "3.7.24",
|
|
67
65
|
"@applitools/snippets": "2.4.15",
|
|
68
66
|
"@applitools/ufg-client": "1.1.24",
|
|
69
67
|
"@applitools/utils": "1.3.30",
|
|
@@ -77,9 +75,9 @@
|
|
|
77
75
|
},
|
|
78
76
|
"devDependencies": {
|
|
79
77
|
"@applitools/bongo": "^2.2.2",
|
|
80
|
-
"@applitools/spec-driver-puppeteer": "^1.1.
|
|
81
|
-
"@applitools/spec-driver-selenium": "^1.5.
|
|
82
|
-
"@applitools/spec-driver-webdriverio": "^1.4.
|
|
78
|
+
"@applitools/spec-driver-puppeteer": "^1.1.39",
|
|
79
|
+
"@applitools/spec-driver-selenium": "^1.5.26",
|
|
80
|
+
"@applitools/spec-driver-webdriverio": "^1.4.23",
|
|
83
81
|
"@applitools/test-server": "^1.1.24",
|
|
84
82
|
"@applitools/test-utils": "^1.5.12",
|
|
85
83
|
"@types/mocha": "^9.1.1",
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { DriverTarget } from './types';
|
|
2
2
|
import { type Logger } from '@applitools/logger';
|
|
3
|
-
import { type
|
|
4
|
-
type Options<
|
|
5
|
-
spec: SpecDriver<
|
|
3
|
+
import { type SpecDriver } from '@applitools/driver';
|
|
4
|
+
type Options<TDriver, TContext, TElement, TSelector> = {
|
|
5
|
+
spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
|
|
6
6
|
logger: Logger;
|
|
7
7
|
};
|
|
8
|
-
export declare function makeGetViewportSize<
|
|
9
|
-
target: DriverTarget<
|
|
8
|
+
export declare function makeGetViewportSize<TDriver, TContext, TElement, TSelector>({ spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, logger, }: {
|
|
9
|
+
target: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
10
10
|
logger?: Logger | undefined;
|
|
11
11
|
}) => Promise<import("@applitools/utils").Size>;
|
|
12
12
|
export {};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { DriverTarget, ImageTarget, LocateSettings, LocateResult } from './types';
|
|
2
2
|
import type { Core as BaseCore } from '@applitools/core-base';
|
|
3
3
|
import { type Logger } from '@applitools/logger';
|
|
4
|
-
import { type
|
|
5
|
-
type Options<
|
|
4
|
+
import { type SpecDriver } from '@applitools/driver';
|
|
5
|
+
type Options<TDriver, TContext, TElement, TSelector> = {
|
|
6
6
|
core: BaseCore;
|
|
7
|
-
spec?: SpecDriver<
|
|
7
|
+
spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
|
|
8
8
|
logger: Logger;
|
|
9
9
|
};
|
|
10
|
-
export declare function makeLocate<
|
|
11
|
-
target: DriverTarget<
|
|
12
|
-
settings: LocateSettings<TLocator,
|
|
10
|
+
export declare function makeLocate<TDriver, TContext, TElement, TSelector>({ spec, core, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): <TLocator extends string>({ settings, target, logger, }: {
|
|
11
|
+
target: DriverTarget<TDriver, TContext, TElement, TSelector> | ImageTarget;
|
|
12
|
+
settings: LocateSettings<TLocator, TElement, TSelector>;
|
|
13
13
|
logger?: Logger | undefined;
|
|
14
14
|
}) => Promise<LocateResult<TLocator>>;
|
|
15
15
|
export {};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { Size } from '@applitools/utils';
|
|
2
2
|
import type { DriverTarget } from './types';
|
|
3
3
|
import { type Logger } from '@applitools/logger';
|
|
4
|
-
import { type
|
|
5
|
-
type Options<
|
|
6
|
-
spec: SpecDriver<
|
|
4
|
+
import { type SpecDriver } from '@applitools/driver';
|
|
5
|
+
type Options<TDriver, TContext, TElement, TSelector> = {
|
|
6
|
+
spec: SpecDriver<TDriver, TContext, TElement, TSelector>;
|
|
7
7
|
logger: Logger;
|
|
8
8
|
};
|
|
9
|
-
export declare function makeSetViewportSize<
|
|
10
|
-
target: DriverTarget<
|
|
9
|
+
export declare function makeSetViewportSize<TDriver, TContext, TElement, TSelector>({ spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ target, size, logger, }: {
|
|
10
|
+
target: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
11
11
|
size: Size;
|
|
12
12
|
logger?: Logger | undefined;
|
|
13
13
|
}) => Promise<void>;
|
|
@@ -1,68 +1,72 @@
|
|
|
1
1
|
import type { MaybeArray, Size, Region } from '@applitools/utils';
|
|
2
2
|
import type * as BaseCore from '@applitools/core-base/types';
|
|
3
|
-
import { type
|
|
3
|
+
import { type Driver, type Selector } from '@applitools/driver';
|
|
4
4
|
import { type Logger } from '@applitools/logger';
|
|
5
5
|
export * from '@applitools/core-base/types';
|
|
6
|
-
export type DriverTarget<
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
isSelector?(selector: any): selector is TSpec['selector'];
|
|
6
|
+
export type DriverTarget<TDriver, TContext, TElement, TSelector> = TDriver | Driver<TDriver, TContext, TElement, TSelector>;
|
|
7
|
+
export interface Core<TDriver, TContext, TElement, TSelector, TEyes = Eyes<TDriver, TContext, TElement, TSelector>> extends BaseCore.Core<TEyes> {
|
|
8
|
+
isDriver?(driver: any): driver is TDriver;
|
|
9
|
+
isElement?(element: any): element is TElement;
|
|
10
|
+
isSelector?(selector: any): selector is TSelector;
|
|
12
11
|
getViewportSize?(options: {
|
|
13
|
-
target: DriverTarget<
|
|
12
|
+
target: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
14
13
|
logger?: Logger;
|
|
15
14
|
}): Promise<Size>;
|
|
16
15
|
setViewportSize?(options: {
|
|
17
|
-
target: DriverTarget<
|
|
16
|
+
target: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
18
17
|
size: Size;
|
|
19
18
|
logger?: Logger;
|
|
20
19
|
}): Promise<void>;
|
|
21
20
|
openEyes(options: {
|
|
22
|
-
target?: DriverTarget<
|
|
21
|
+
target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
23
22
|
settings: BaseCore.OpenSettings;
|
|
24
23
|
eyes?: BaseCore.Eyes[];
|
|
25
24
|
logger?: Logger;
|
|
26
25
|
}): Promise<TEyes>;
|
|
27
26
|
locate<TLocator extends string>(options: {
|
|
28
|
-
target:
|
|
29
|
-
settings: LocateSettings<TLocator,
|
|
27
|
+
target: DriverTarget<TDriver, TContext, TElement, TSelector> | BaseCore.ImageTarget;
|
|
28
|
+
settings: LocateSettings<TLocator, TElement, TSelector>;
|
|
30
29
|
logger?: Logger;
|
|
31
30
|
}): Promise<BaseCore.LocateResult<TLocator>>;
|
|
32
|
-
locateText<TPattern extends string>(options: {
|
|
33
|
-
target: TTarget;
|
|
34
|
-
settings: LocateTextSettings<TPattern, TSpec>;
|
|
35
|
-
logger?: Logger;
|
|
36
|
-
}): Promise<BaseCore.LocateTextResult<TPattern>>;
|
|
37
|
-
extractText(options: {
|
|
38
|
-
target: TTarget;
|
|
39
|
-
settings: MaybeArray<ExtractTextSettings<TSpec>>;
|
|
40
|
-
logger?: Logger;
|
|
41
|
-
}): Promise<string[]>;
|
|
42
31
|
}
|
|
43
|
-
export interface Eyes<
|
|
32
|
+
export interface Eyes<TDriver, TContext, TElement, TSelector, TTarget = DriverTarget<TDriver, TContext, TElement, TSelector>> extends BaseCore.Eyes<TTarget> {
|
|
44
33
|
getBaseEyes(options?: {
|
|
45
34
|
logger?: Logger;
|
|
46
35
|
}): Promise<BaseCore.Eyes[]>;
|
|
47
36
|
check(options?: {
|
|
48
37
|
target?: TTarget;
|
|
49
|
-
settings?: CheckSettings<
|
|
38
|
+
settings?: CheckSettings<TElement, TSelector>;
|
|
50
39
|
logger?: Logger;
|
|
51
40
|
}): Promise<BaseCore.CheckResult[]>;
|
|
52
41
|
checkAndClose(options?: {
|
|
53
42
|
target?: TTarget;
|
|
54
|
-
settings?: CheckSettings<
|
|
43
|
+
settings?: CheckSettings<TElement, TSelector> & BaseCore.CloseSettings;
|
|
55
44
|
logger?: Logger;
|
|
56
45
|
}): Promise<BaseCore.TestResult[]>;
|
|
46
|
+
locateText<TPattern extends string>(options: {
|
|
47
|
+
target?: TTarget;
|
|
48
|
+
settings: LocateTextSettings<TPattern, TElement, TSelector>;
|
|
49
|
+
logger?: Logger;
|
|
50
|
+
}): Promise<BaseCore.LocateTextResult<TPattern>>;
|
|
51
|
+
extractText(options: {
|
|
52
|
+
target?: TTarget;
|
|
53
|
+
settings: MaybeArray<ExtractTextSettings<TElement, TSelector>>;
|
|
54
|
+
logger?: Logger;
|
|
55
|
+
}): Promise<string[]>;
|
|
57
56
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
57
|
+
type RegionReference<TElement, TSelector> = Region | ElementReference<TElement, TSelector>;
|
|
58
|
+
type ElementReference<TElement, TSelector> = TElement | Selector<TSelector>;
|
|
59
|
+
type FrameReference<TElement, TSelector> = ElementReference<TElement, TSelector> | string | number;
|
|
60
|
+
type ContextReference<TElement, TSelector> = {
|
|
61
|
+
frame: FrameReference<TElement, TSelector>;
|
|
62
|
+
scrollRootElement?: ElementReference<TElement, TSelector>;
|
|
63
|
+
};
|
|
64
|
+
type StitchMode = 'Scroll' | 'CSS';
|
|
65
|
+
export interface ScreenshotSettings<TElement, TSelector> extends BaseCore.ImageSettings<RegionReference<TElement, TSelector>> {
|
|
66
|
+
frames?: (ContextReference<TElement, TSelector> | FrameReference<TElement, TSelector>)[];
|
|
63
67
|
fully?: boolean;
|
|
64
|
-
scrollRootElement?: ElementReference<
|
|
65
|
-
stitchMode?:
|
|
68
|
+
scrollRootElement?: ElementReference<TElement, TSelector>;
|
|
69
|
+
stitchMode?: StitchMode;
|
|
66
70
|
hideScrollbars?: boolean;
|
|
67
71
|
hideCaret?: boolean;
|
|
68
72
|
overlap?: {
|
|
@@ -78,7 +82,7 @@ export interface ScreenshotSettings<TSpec extends SpecType> extends BaseCore.Ima
|
|
|
78
82
|
};
|
|
79
83
|
webview?: boolean | string;
|
|
80
84
|
}
|
|
81
|
-
export type LocateSettings<TLocator extends string,
|
|
82
|
-
export type
|
|
83
|
-
export type
|
|
84
|
-
export type
|
|
85
|
+
export type LocateSettings<TLocator extends string, TElement, TSelector> = BaseCore.LocateSettings<TLocator, RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
|
|
86
|
+
export type CheckSettings<TElement, TSelector> = BaseCore.CheckSettings<RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
|
|
87
|
+
export type LocateTextSettings<TPattern extends string, TElement, TSelector> = BaseCore.LocateTextSettings<TPattern, RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
|
|
88
|
+
export type ExtractTextSettings<TElement, TSelector> = BaseCore.ExtractTextSettings<RegionReference<TElement, TSelector>> & ScreenshotSettings<TElement, TSelector>;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import type { Region } from '@applitools/utils';
|
|
2
2
|
import type { ScreenshotSettings } from '../../classic/types';
|
|
3
3
|
import { type Logger } from '@applitools/logger';
|
|
4
|
-
import { type Driver, type Element, type ElementReference
|
|
5
|
-
export type Screenshot<
|
|
4
|
+
import { type Driver, type Element, type ElementReference } from '@applitools/driver';
|
|
5
|
+
export type Screenshot<TElement, TSelector> = {
|
|
6
6
|
image: any;
|
|
7
7
|
region: Region;
|
|
8
|
-
element: Element<
|
|
9
|
-
scrollingElement: Element<
|
|
8
|
+
element: Element<unknown, unknown, TElement, TSelector>;
|
|
9
|
+
scrollingElement: Element<unknown, unknown, TElement, TSelector>;
|
|
10
10
|
restoreState(): Promise<void>;
|
|
11
11
|
calculatedRegions: [];
|
|
12
12
|
};
|
|
13
|
-
export declare function takeScreenshot<
|
|
14
|
-
driver: Driver<
|
|
15
|
-
settings: ScreenshotSettings<
|
|
16
|
-
regionsToCalculate?: ElementReference<
|
|
13
|
+
export declare function takeScreenshot<TDriver, TContext, TElement, TSelector>({ driver, settings, logger, }: {
|
|
14
|
+
driver: Driver<TDriver, TContext, TElement, TSelector>;
|
|
15
|
+
settings: ScreenshotSettings<TElement, TSelector> & {
|
|
16
|
+
regionsToCalculate?: ElementReference<TElement, TSelector>[];
|
|
17
17
|
};
|
|
18
18
|
logger: Logger;
|
|
19
|
-
}): Promise<Screenshot<
|
|
19
|
+
}): Promise<Screenshot<TElement, TSelector>>;
|
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
import type { Region } from '@applitools/utils';
|
|
2
|
-
import type { CheckSettings } from '../types';
|
|
3
2
|
import type { CheckSettings as BaseCheckSettings } from '@applitools/core-base';
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import type { CheckSettings } from '../types';
|
|
4
|
+
import { type Selector } from '@applitools/driver';
|
|
5
|
+
export declare function toBaseCheckSettings<TElement, TSelector>({ settings }: {
|
|
6
|
+
settings: CheckSettings<TElement, TSelector>;
|
|
7
7
|
}): {
|
|
8
|
-
elementReferencesToCalculate:
|
|
9
|
-
elementReferenceToTarget:
|
|
8
|
+
elementReferencesToCalculate: (TElement | Selector<TSelector>)[];
|
|
9
|
+
elementReferenceToTarget: string | TElement | TSelector | {
|
|
10
|
+
selector: string | TSelector;
|
|
11
|
+
type?: string | undefined;
|
|
12
|
+
child?: Selector<TSelector> | undefined;
|
|
13
|
+
shadow?: Selector<TSelector> | undefined;
|
|
14
|
+
frame?: Selector<TSelector> | undefined;
|
|
15
|
+
fallback?: Selector<TSelector> | undefined;
|
|
16
|
+
} | undefined;
|
|
10
17
|
getBaseCheckSettings: ({ calculatedRegions, preserveTransformation, }: {
|
|
11
18
|
calculatedRegions: {
|
|
12
19
|
selector?: Selector;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Logger } from '@applitools/logger';
|
|
2
|
-
import { type
|
|
2
|
+
import { type Context } from '@applitools/driver';
|
|
3
3
|
export type LazyLoadSettings = {
|
|
4
4
|
scrollLength?: number;
|
|
5
5
|
waitingTime?: number;
|
|
@@ -7,8 +7,8 @@ export type LazyLoadSettings = {
|
|
|
7
7
|
executionTimeout?: number;
|
|
8
8
|
pollTimeout?: number;
|
|
9
9
|
};
|
|
10
|
-
export declare function waitForLazyLoad<
|
|
11
|
-
context:
|
|
10
|
+
export declare function waitForLazyLoad<TContext extends Context<unknown, unknown, unknown, unknown>>({ context, settings, logger, }: {
|
|
11
|
+
context: TContext;
|
|
12
12
|
settings: LazyLoadSettings;
|
|
13
13
|
logger: Logger;
|
|
14
14
|
}): Promise<void>;
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import type { Target, DriverTarget, Eyes, Config, CheckSettings, CloseSettings, TestResult } from './types';
|
|
2
2
|
import { type Logger } from '@applitools/logger';
|
|
3
|
-
import { type
|
|
4
|
-
type Options<
|
|
3
|
+
import { type SpecDriver } from '@applitools/driver';
|
|
4
|
+
type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
|
|
5
5
|
type?: TType;
|
|
6
|
-
eyes: Eyes<
|
|
7
|
-
target?: DriverTarget<
|
|
8
|
-
spec?: SpecDriver<
|
|
6
|
+
eyes: Eyes<TDriver, TContext, TElement, TSelector, TType>;
|
|
7
|
+
target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
8
|
+
spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
|
|
9
9
|
logger: Logger;
|
|
10
10
|
};
|
|
11
|
-
export declare function makeCheckAndClose<
|
|
11
|
+
export declare function makeCheckAndClose<TDriver, TContext, TElement, TSelector, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, target, settings, config, logger, }?: {
|
|
12
12
|
type?: TType | undefined;
|
|
13
|
-
target?: Target<
|
|
14
|
-
settings?: (CheckSettings<
|
|
15
|
-
|
|
13
|
+
target?: Target<TDriver, TContext, TElement, TSelector, TType> | undefined;
|
|
14
|
+
settings?: (CheckSettings<TElement, TSelector, TDefaultType> & (TDefaultType extends "ufg" ? import("@applitools/core-base").CloseSettings : import("@applitools/core-base").CloseSettings) & {
|
|
15
|
+
throwErr?: boolean | undefined;
|
|
16
|
+
} & CheckSettings<TElement, TSelector, TType> & (TType extends "ufg" ? import("@applitools/core-base").CloseSettings : import("@applitools/core-base").CloseSettings)) | undefined;
|
|
17
|
+
config?: (Config<TElement, TSelector, TDefaultType> & Config<TElement, TSelector, TType>) | undefined;
|
|
16
18
|
logger?: Logger | undefined;
|
|
17
19
|
}) => Promise<TestResult<TType>[]>;
|
|
18
20
|
export {};
|
package/types/check.d.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import type { Target, DriverTarget, Eyes, Config, CheckSettings, CheckResult } from './types';
|
|
2
2
|
import { type Logger } from '@applitools/logger';
|
|
3
|
-
import { type
|
|
4
|
-
type Options<
|
|
3
|
+
import { type SpecDriver } from '@applitools/driver';
|
|
4
|
+
type Options<TDriver, TContext, TElement, TSelector, TType extends 'classic' | 'ufg'> = {
|
|
5
5
|
type?: TType;
|
|
6
|
-
eyes: Eyes<
|
|
7
|
-
target?: DriverTarget<
|
|
8
|
-
spec?: SpecDriver<
|
|
6
|
+
eyes: Eyes<TDriver, TContext, TElement, TSelector, TType>;
|
|
7
|
+
target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
8
|
+
spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
|
|
9
9
|
logger: Logger;
|
|
10
10
|
};
|
|
11
|
-
export declare function makeCheck<
|
|
11
|
+
export declare function makeCheck<TDriver, TContext, TElement, TSelector, TDefaultType extends 'classic' | 'ufg' = 'classic'>({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector, TDefaultType>): <TType extends "classic" | "ufg" = TDefaultType>({ type, target, settings, config, logger, }?: {
|
|
12
12
|
type?: TType | undefined;
|
|
13
|
-
target?: Target<
|
|
14
|
-
settings?: CheckSettings<
|
|
15
|
-
config?: Config<
|
|
13
|
+
target?: Target<TDriver, TContext, TElement, TSelector, TType> | undefined;
|
|
14
|
+
settings?: CheckSettings<TElement, TSelector, TType> | undefined;
|
|
15
|
+
config?: Config<TElement, TSelector, TType> | undefined;
|
|
16
16
|
logger?: Logger | undefined;
|
|
17
17
|
}) => Promise<CheckResult<TType>[]>;
|
|
18
18
|
export {};
|
package/types/classic/abort.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import type { AbortSettings } from './types';
|
|
1
|
+
import type { AbortSettings, TestResult } from './types';
|
|
2
2
|
import type { Eyes } from './types';
|
|
3
3
|
import { type Logger } from '@applitools/logger';
|
|
4
4
|
import type { DriverTarget } from './types';
|
|
5
|
-
import { type
|
|
6
|
-
type Options<
|
|
7
|
-
eyes: Eyes<
|
|
8
|
-
target?: DriverTarget<
|
|
9
|
-
spec?: SpecDriver<
|
|
5
|
+
import { type SpecDriver } from '@applitools/driver';
|
|
6
|
+
type Options<TDriver, TContext, TElement, TSelector> = {
|
|
7
|
+
eyes: Eyes<TDriver, TContext, TElement, TSelector>;
|
|
8
|
+
target?: DriverTarget<TDriver, TContext, TElement, TSelector>;
|
|
9
|
+
spec?: SpecDriver<TDriver, TContext, TElement, TSelector>;
|
|
10
10
|
logger: Logger;
|
|
11
11
|
};
|
|
12
|
-
export declare function makeAbort<
|
|
12
|
+
export declare function makeAbort<TDriver, TContext, TElement, TSelector>({ eyes, target, spec, logger: defaultLogger, }: Options<TDriver, TContext, TElement, TSelector>): ({ settings, logger, }?: {
|
|
13
13
|
settings?: AbortSettings | undefined;
|
|
14
14
|
logger?: Logger | undefined;
|
|
15
|
-
}) => Promise<
|
|
15
|
+
}) => Promise<TestResult[]>;
|
|
16
16
|
export {};
|