@applitools/core 1.2.17 → 1.3.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/dist/automation/get-viewport-size.js +3 -3
- package/dist/automation/locate.js +5 -5
- package/dist/automation/set-viewport-size.js +3 -3
- package/dist/check-and-close.js +11 -6
- package/dist/check.js +26 -17
- package/dist/classic/check-and-close.js +12 -8
- package/dist/classic/check.js +15 -11
- package/dist/classic/extract-text.js +5 -9
- package/dist/classic/get-base-eyes.js +4 -4
- package/dist/classic/locate-text.js +5 -5
- package/dist/classic/open-eyes.js +7 -7
- package/dist/close.js +2 -1
- package/dist/extract-text.js +2 -1
- package/dist/get-typed-eyes.js +27 -0
- package/dist/locate-text.js +2 -1
- package/dist/make-manager.js +1 -1
- package/dist/open-eyes.js +21 -27
- package/dist/types.js +1 -0
- package/dist/ufg/abort.js +1 -1
- package/dist/ufg/check.js +14 -9
- package/dist/ufg/get-base-eyes.js +1 -17
- package/dist/ufg/open-eyes.js +6 -11
- package/dist/utils/wait-for-lazy-load.js +10 -8
- package/package.json +18 -16
- package/types/automation/get-viewport-size.d.ts +6 -3
- package/types/automation/locate.d.ts +7 -4
- package/types/automation/set-viewport-size.d.ts +8 -3
- package/types/automation/types.d.ts +18 -69
- package/types/automation/utils/take-screenshot.d.ts +1 -1
- package/types/check-and-close.d.ts +13 -13
- package/types/check.d.ts +9 -11
- package/types/classic/check-and-close.d.ts +9 -5
- package/types/classic/check.d.ts +9 -5
- package/types/classic/core.d.ts +1 -1
- package/types/classic/extract-text.d.ts +10 -5
- package/types/classic/get-base-eyes.d.ts +3 -3
- package/types/classic/locate-text.d.ts +9 -5
- package/types/classic/open-eyes.d.ts +9 -4
- package/types/classic/types.d.ts +8 -35
- package/types/classic/utils/take-dom-capture.d.ts +1 -1
- package/types/close-batch.d.ts +1 -1
- package/types/close-manager.d.ts +1 -1
- package/types/close.d.ts +4 -6
- package/types/core.d.ts +1 -1
- package/types/delete-test.d.ts +1 -1
- package/types/extract-text.d.ts +7 -9
- package/types/get-typed-eyes.d.ts +21 -0
- package/types/locate-text.d.ts +7 -9
- package/types/locate.d.ts +3 -4
- package/types/make-manager.d.ts +2 -1
- package/types/open-eyes.d.ts +11 -8
- package/types/types.d.ts +38 -23
- package/types/ufg/abort.d.ts +5 -3
- package/types/ufg/check-and-close.d.ts +5 -5
- package/types/ufg/check.d.ts +9 -5
- package/types/ufg/close.d.ts +6 -3
- package/types/ufg/core.d.ts +1 -1
- package/types/ufg/get-base-eyes.d.ts +3 -3
- package/types/ufg/open-eyes.d.ts +6 -7
- package/types/ufg/types.d.ts +12 -37
- package/types/ufg/utils/take-dom-snapshot.d.ts +1 -1
- package/types/ufg/utils/take-dom-snapshots.d.ts +1 -1
- package/types/ufg/utils/take-vhses.d.ts +1 -1
- package/types/utils/wait-for-lazy-load.d.ts +4 -4
|
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.makeGetViewportSize = void 0;
|
|
4
4
|
const driver_1 = require("@applitools/driver");
|
|
5
5
|
function makeGetViewportSize({ spec, logger: defaultLogger, }) {
|
|
6
|
-
return async function getViewportSize({
|
|
7
|
-
logger.log(`Command "getViewportSize" is called
|
|
8
|
-
|
|
6
|
+
return async function getViewportSize({ target, logger = defaultLogger, }) {
|
|
7
|
+
logger.log(`Command "getViewportSize" is called`);
|
|
8
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
9
9
|
return driver.getViewportSize();
|
|
10
10
|
};
|
|
11
11
|
}
|
|
@@ -4,12 +4,12 @@ exports.makeLocate = void 0;
|
|
|
4
4
|
const driver_1 = require("@applitools/driver");
|
|
5
5
|
const take_screenshot_1 = require("./utils/take-screenshot");
|
|
6
6
|
function makeLocate({ spec, core, logger: defaultLogger, }) {
|
|
7
|
-
return async function locate({ settings,
|
|
8
|
-
logger.log(`Command "locate" is called with
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return core.locate({ target: target, settings: settings, logger });
|
|
7
|
+
return async function locate({ settings, target, logger = defaultLogger, }) {
|
|
8
|
+
logger.log(`Command "locate" is called with settings`, settings);
|
|
9
|
+
if (!(0, driver_1.isDriver)(target, spec)) {
|
|
10
|
+
return core.locate({ target, settings: settings, logger });
|
|
12
11
|
}
|
|
12
|
+
const driver = (0, driver_1.isDriver)(target, spec) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : null;
|
|
13
13
|
const screenshot = await (0, take_screenshot_1.takeScreenshot)({ driver, settings, logger });
|
|
14
14
|
const baseTarget = { image: await screenshot.image.toPng() };
|
|
15
15
|
const results = await core.locate({ target: baseTarget, settings: settings, logger });
|
|
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.makeSetViewportSize = void 0;
|
|
4
4
|
const driver_1 = require("@applitools/driver");
|
|
5
5
|
function makeSetViewportSize({ spec, logger: defaultLogger, }) {
|
|
6
|
-
return async function setViewportSize({
|
|
7
|
-
logger.log(`Command "setViewportSize" is called with
|
|
8
|
-
|
|
6
|
+
return async function setViewportSize({ target, size, logger = defaultLogger, }) {
|
|
7
|
+
logger.log(`Command "setViewportSize" is called with size`, size);
|
|
8
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
9
9
|
return driver.setViewportSize(size);
|
|
10
10
|
};
|
|
11
11
|
}
|
package/dist/check-and-close.js
CHANGED
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeCheckAndClose = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
const driver_1 = require("@applitools/driver");
|
|
5
|
+
function makeCheckAndClose({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }) {
|
|
6
|
+
return async function checkAndClose({ type = defaultType, target = defaultTarget, settings = {}, config, logger = defaultLogger, } = {}) {
|
|
6
7
|
settings = { ...config === null || config === void 0 ? void 0 : config.screenshot, ...config === null || config === void 0 ? void 0 : config.check, ...config === null || config === void 0 ? void 0 : config.close, ...settings };
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
settings:
|
|
8
|
+
const driver = (0, driver_1.isDriver)(target, spec) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : null;
|
|
9
|
+
const typedEyes = await eyes.getTypedEyes({
|
|
10
|
+
type,
|
|
11
|
+
settings: driver && {
|
|
12
|
+
type: driver.isNative ? 'native' : 'web',
|
|
13
|
+
renderers: settings.renderers,
|
|
14
|
+
},
|
|
11
15
|
logger,
|
|
12
16
|
});
|
|
17
|
+
const results = await typedEyes.checkAndClose({ target: driver !== null && driver !== void 0 ? driver : target, settings, logger });
|
|
13
18
|
return results;
|
|
14
19
|
};
|
|
15
20
|
}
|
package/dist/check.js
CHANGED
|
@@ -27,37 +27,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.makeCheck = void 0;
|
|
30
|
+
const driver_1 = require("@applitools/driver");
|
|
30
31
|
const utils = __importStar(require("@applitools/utils"));
|
|
31
32
|
const chalk_1 = __importDefault(require("chalk"));
|
|
32
|
-
function makeCheck({ type: defaultType,
|
|
33
|
-
return async function check({ type = defaultType, target, settings, config, logger = defaultLogger, } = {}) {
|
|
34
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q
|
|
35
|
-
var _s, _t, _u
|
|
33
|
+
function makeCheck({ type: defaultType, eyes, target: defaultTarget, spec, logger: defaultLogger, }) {
|
|
34
|
+
return async function check({ type = defaultType, target = defaultTarget, settings, config, logger = defaultLogger, } = {}) {
|
|
35
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
36
|
+
var _r, _s, _t, _u;
|
|
36
37
|
settings = { ...config === null || config === void 0 ? void 0 : config.screenshot, ...config === null || config === void 0 ? void 0 : config.check, ...settings };
|
|
37
|
-
const eyes = await getTypedEyes({ type, renderers: settings.renderers });
|
|
38
38
|
(_a = settings.fully) !== null && _a !== void 0 ? _a : (settings.fully = !settings.region && (!settings.frames || settings.frames.length === 0));
|
|
39
39
|
(_b = settings.waitBeforeCapture) !== null && _b !== void 0 ? _b : (settings.waitBeforeCapture = 100);
|
|
40
40
|
(_c = settings.stitchMode) !== null && _c !== void 0 ? _c : (settings.stitchMode = 'Scroll');
|
|
41
41
|
(_d = settings.hideScrollbars) !== null && _d !== void 0 ? _d : (settings.hideScrollbars = true);
|
|
42
42
|
(_e = settings.hideCaret) !== null && _e !== void 0 ? _e : (settings.hideCaret = true);
|
|
43
|
-
|
|
44
|
-
(
|
|
45
|
-
(
|
|
46
|
-
(
|
|
47
|
-
(
|
|
48
|
-
(
|
|
49
|
-
(
|
|
43
|
+
settings.overlap = { top: 10, bottom: 50, ...settings === null || settings === void 0 ? void 0 : settings.overlap };
|
|
44
|
+
(_f = settings.matchLevel) !== null && _f !== void 0 ? _f : (settings.matchLevel = 'Strict');
|
|
45
|
+
(_g = settings.ignoreCaret) !== null && _g !== void 0 ? _g : (settings.ignoreCaret = true);
|
|
46
|
+
(_h = settings.sendDom) !== null && _h !== void 0 ? _h : (settings.sendDom = eyes.test.account.rcaEnabled || settings.matchLevel === 'Layout' || settings.enablePatterns || settings.useDom);
|
|
47
|
+
(_j = settings.autProxy) !== null && _j !== void 0 ? _j : (settings.autProxy = eyes.test.server.proxy);
|
|
48
|
+
(_k = settings.useDom) !== null && _k !== void 0 ? _k : (settings.useDom = false);
|
|
49
|
+
(_l = (_r = settings).retryTimeout) !== null && _l !== void 0 ? _l : (_r.retryTimeout = 2000);
|
|
50
50
|
settings.lazyLoad = settings.lazyLoad === true ? {} : settings.lazyLoad;
|
|
51
51
|
if (settings.lazyLoad) {
|
|
52
|
-
(
|
|
53
|
-
(
|
|
54
|
-
(
|
|
52
|
+
(_m = (_s = settings.lazyLoad).scrollLength) !== null && _m !== void 0 ? _m : (_s.scrollLength = 300);
|
|
53
|
+
(_o = (_t = settings.lazyLoad).waitingTime) !== null && _o !== void 0 ? _o : (_t.waitingTime = 2000);
|
|
54
|
+
(_p = (_u = settings.lazyLoad).maxAmountToScroll) !== null && _p !== void 0 ? _p : (_u.maxAmountToScroll = 15000);
|
|
55
55
|
}
|
|
56
|
-
(
|
|
56
|
+
(_q = settings.waitBetweenStitches) !== null && _q !== void 0 ? _q : (settings.waitBetweenStitches = utils.types.isObject(settings.lazyLoad) ? settings.lazyLoad.waitingTime : 100);
|
|
57
57
|
if (settings.matchLevel === 'Content') {
|
|
58
58
|
logger.console.log(chalk_1.default.yellow(`The "Content" match level value has been deprecated, use "IgnoreColors" instead.`));
|
|
59
59
|
}
|
|
60
|
-
const
|
|
60
|
+
const driver = (0, driver_1.isDriver)(target, spec) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : null;
|
|
61
|
+
const typedEyes = await eyes.getTypedEyes({
|
|
62
|
+
type,
|
|
63
|
+
settings: driver && {
|
|
64
|
+
type: driver.isNative ? 'native' : 'web',
|
|
65
|
+
renderers: settings.renderers,
|
|
66
|
+
},
|
|
67
|
+
logger,
|
|
68
|
+
});
|
|
69
|
+
const results = await typedEyes.check({ target: driver !== null && driver !== void 0 ? driver : target, settings, logger });
|
|
61
70
|
return results;
|
|
62
71
|
};
|
|
63
72
|
}
|
|
@@ -30,19 +30,23 @@ const take_dom_capture_1 = require("./utils/take-dom-capture");
|
|
|
30
30
|
const to_base_check_settings_1 = require("../utils/to-base-check-settings");
|
|
31
31
|
const wait_for_lazy_load_1 = require("../utils/wait-for-lazy-load");
|
|
32
32
|
const utils = __importStar(require("@applitools/utils"));
|
|
33
|
-
function makeCheckAndClose({ eyes,
|
|
34
|
-
return async function checkAndClose({ settings = {},
|
|
33
|
+
function makeCheckAndClose({ eyes, target: defaultTarget, spec, logger: defaultLogger, }) {
|
|
34
|
+
return async function checkAndClose({ target = defaultTarget, settings = {}, logger = defaultLogger, } = {}) {
|
|
35
35
|
var _a;
|
|
36
36
|
logger.log('Command "checkAndClose" is called with settings', settings);
|
|
37
|
-
driver !== null && driver !== void 0 ? driver : (driver = (spec === null || spec === void 0 ? void 0 : spec.isDriver(target)) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : defaultDriver);
|
|
38
37
|
const baseEyes = await eyes.getBaseEyes({ logger });
|
|
39
|
-
if (!
|
|
40
|
-
const baseTarget = target;
|
|
38
|
+
if (!(0, driver_1.isDriver)(target, spec)) {
|
|
41
39
|
const baseSettings = settings;
|
|
42
|
-
return (await Promise.all(baseEyes.map(baseEyes => baseEyes.checkAndClose({ target
|
|
40
|
+
return (await Promise.all(baseEyes.map(baseEyes => baseEyes.checkAndClose({ target, settings: baseSettings, logger })))).flat();
|
|
41
|
+
}
|
|
42
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
43
|
+
if (settings.lazyLoad && driver.isWeb) {
|
|
44
|
+
await (0, wait_for_lazy_load_1.waitForLazyLoad)({
|
|
45
|
+
context: driver.currentContext,
|
|
46
|
+
settings: settings.lazyLoad !== true ? settings.lazyLoad : {},
|
|
47
|
+
logger,
|
|
48
|
+
});
|
|
43
49
|
}
|
|
44
|
-
if (settings.lazyLoad)
|
|
45
|
-
await (0, wait_for_lazy_load_1.waitForLazyLoad)({ driver, settings: settings.lazyLoad !== true ? settings.lazyLoad : {}, logger });
|
|
46
50
|
const { elementReferencesToCalculate, getBaseCheckSettings } = (0, to_base_check_settings_1.toBaseCheckSettings)({ settings });
|
|
47
51
|
const screenshot = await (0, take_screenshot_1.takeScreenshot)({
|
|
48
52
|
driver,
|
package/dist/classic/check.js
CHANGED
|
@@ -30,21 +30,25 @@ const take_dom_capture_1 = require("./utils/take-dom-capture");
|
|
|
30
30
|
const to_base_check_settings_1 = require("../utils/to-base-check-settings");
|
|
31
31
|
const wait_for_lazy_load_1 = require("../utils/wait-for-lazy-load");
|
|
32
32
|
const utils = __importStar(require("@applitools/utils"));
|
|
33
|
-
function makeCheck({ eyes,
|
|
34
|
-
return async function check({ settings = {},
|
|
35
|
-
var _a;
|
|
33
|
+
function makeCheck({ eyes, target: defaultTarget, spec, logger: defaultLogger, }) {
|
|
34
|
+
return async function check({ target = defaultTarget, settings = {}, logger = defaultLogger, } = {}) {
|
|
35
|
+
var _a, _b;
|
|
36
36
|
logger.log('Command "check" is called with settings', settings);
|
|
37
|
-
driver !== null && driver !== void 0 ? driver : (driver = (spec === null || spec === void 0 ? void 0 : spec.isDriver(target)) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : defaultDriver);
|
|
38
37
|
const baseEyes = await eyes.getBaseEyes();
|
|
39
|
-
if (!
|
|
40
|
-
|
|
41
|
-
const baseSettings = settings;
|
|
42
|
-
return (await Promise.all(baseEyes.map(baseEyes => baseEyes.check({ target: baseTarget, settings: baseSettings, logger })))).flat();
|
|
38
|
+
if (!(0, driver_1.isDriver)(target, spec)) {
|
|
39
|
+
return (await Promise.all(baseEyes.map(baseEyes => baseEyes.check({ target, settings: settings, logger })))).flat();
|
|
43
40
|
}
|
|
41
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
44
42
|
await driver.refreshContexts();
|
|
45
|
-
await driver.currentContext.setScrollingElement(settings.scrollRootElement);
|
|
43
|
+
await driver.currentContext.setScrollingElement((_a = settings.scrollRootElement) !== null && _a !== void 0 ? _a : null);
|
|
46
44
|
if (settings.lazyLoad && driver.isWeb) {
|
|
47
|
-
|
|
45
|
+
if (settings.lazyLoad) {
|
|
46
|
+
await (0, wait_for_lazy_load_1.waitForLazyLoad)({
|
|
47
|
+
context: driver.currentContext,
|
|
48
|
+
settings: settings.lazyLoad !== true ? settings.lazyLoad : {},
|
|
49
|
+
logger,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
48
52
|
}
|
|
49
53
|
// TODO it actually could be different per eyes
|
|
50
54
|
const shouldRunOnce = true;
|
|
@@ -71,7 +75,7 @@ function makeCheck({ eyes, driver: defaultDriver, spec, logger: defaultLogger, }
|
|
|
71
75
|
if (settings.fully)
|
|
72
76
|
await screenshot.scrollingElement.setAttribute('data-applitools-scroll', 'true');
|
|
73
77
|
else
|
|
74
|
-
await ((
|
|
78
|
+
await ((_b = screenshot.element) === null || _b === void 0 ? void 0 : _b.setAttribute('data-applitools-scroll', 'true'));
|
|
75
79
|
baseTarget.dom = await (0, take_dom_capture_1.takeDomCapture)({ driver, logger }).catch(() => null);
|
|
76
80
|
}
|
|
77
81
|
if (settings.pageId) {
|
|
@@ -29,19 +29,15 @@ const take_screenshot_1 = require("../automation/utils/take-screenshot");
|
|
|
29
29
|
const take_dom_capture_1 = require("./utils/take-dom-capture");
|
|
30
30
|
const utils = __importStar(require("@applitools/utils"));
|
|
31
31
|
const snippets_1 = require("@applitools/snippets");
|
|
32
|
-
function makeExtractText({ eyes,
|
|
33
|
-
return async function extractText({
|
|
32
|
+
function makeExtractText({ eyes, target: defaultTarget, spec, logger: defaultLogger, }) {
|
|
33
|
+
return async function extractText({ target = defaultTarget, settings, logger = defaultLogger, }) {
|
|
34
34
|
logger.log('Command "extractText" is called with settings', settings);
|
|
35
|
-
driver !== null && driver !== void 0 ? driver : (driver = (spec === null || spec === void 0 ? void 0 : spec.isDriver(target)) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : defaultDriver);
|
|
36
35
|
const [baseEyes] = await eyes.getBaseEyes();
|
|
37
|
-
if (!
|
|
38
|
-
return baseEyes.extractText({
|
|
39
|
-
target: target,
|
|
40
|
-
settings: settings,
|
|
41
|
-
logger,
|
|
42
|
-
});
|
|
36
|
+
if (!(0, driver_1.isDriver)(target, spec)) {
|
|
37
|
+
return baseEyes.extractText({ target, settings: settings, logger });
|
|
43
38
|
}
|
|
44
39
|
settings = utils.types.isArray(settings) ? settings : [settings];
|
|
40
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
45
41
|
const results = await settings.reduce(async (prev, settings) => {
|
|
46
42
|
var _a;
|
|
47
43
|
const steps = await prev;
|
|
@@ -27,13 +27,13 @@ exports.makeGetBaseEyes = void 0;
|
|
|
27
27
|
const utils = __importStar(require("@applitools/utils"));
|
|
28
28
|
function makeGetBaseEyes({ settings, core, eyes, logger: defaultLogger }) {
|
|
29
29
|
const getBaseEyesWithCache = utils.general.cachify(getBaseEyes, () => 'default');
|
|
30
|
-
if (eyes)
|
|
30
|
+
if (eyes)
|
|
31
31
|
getBaseEyesWithCache.setCachedValue('default', Promise.resolve(eyes));
|
|
32
|
-
}
|
|
33
32
|
return getBaseEyesWithCache;
|
|
34
33
|
async function getBaseEyes({ logger = defaultLogger } = {}) {
|
|
35
|
-
logger.log(`Command "getBaseEyes" is called with
|
|
36
|
-
|
|
34
|
+
logger.log(`Command "getBaseEyes" is called with settings`, settings);
|
|
35
|
+
const eyes = await core.openEyes({ settings, logger });
|
|
36
|
+
return [eyes];
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
exports.makeGetBaseEyes = makeGetBaseEyes;
|
|
@@ -28,14 +28,14 @@ const driver_1 = require("@applitools/driver");
|
|
|
28
28
|
const take_screenshot_1 = require("../automation/utils/take-screenshot");
|
|
29
29
|
// import {takeDomCapture} from './utils/take-dom-capture'
|
|
30
30
|
const utils = __importStar(require("@applitools/utils"));
|
|
31
|
-
function makeLocateText({
|
|
32
|
-
return async function locateText({
|
|
31
|
+
function makeLocateText({ eyes, target: defaultTarget, spec, logger: defaultLogger, }) {
|
|
32
|
+
return async function locateText({ target = defaultTarget, settings, logger = defaultLogger, }) {
|
|
33
33
|
logger.log('Command "locateText" is called with settings', settings);
|
|
34
|
-
driver !== null && driver !== void 0 ? driver : (driver = (spec === null || spec === void 0 ? void 0 : spec.isDriver(target)) ? await (0, driver_1.makeDriver)({ spec, driver: target, logger }) : defaultDriver);
|
|
35
34
|
const [baseEyes] = await eyes.getBaseEyes();
|
|
36
|
-
if (!
|
|
37
|
-
return baseEyes.locateText({ target
|
|
35
|
+
if (!(0, driver_1.isDriver)(target, spec)) {
|
|
36
|
+
return baseEyes.locateText({ target, settings: settings, logger });
|
|
38
37
|
}
|
|
38
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
39
39
|
const screenshot = await (0, take_screenshot_1.takeScreenshot)({ driver, settings, logger });
|
|
40
40
|
const baseTarget = {
|
|
41
41
|
image: await screenshot.image.toPng(),
|
|
@@ -32,11 +32,11 @@ const locate_text_1 = require("./locate-text");
|
|
|
32
32
|
const extract_text_1 = require("./extract-text");
|
|
33
33
|
const utils = __importStar(require("@applitools/utils"));
|
|
34
34
|
function makeOpenEyes({ core, spec, logger: defaultLogger, }) {
|
|
35
|
-
return async function openEyes({ settings, eyes,
|
|
35
|
+
return async function openEyes({ target, settings, eyes, logger = defaultLogger, }) {
|
|
36
36
|
var _a, _b, _c, _d, _e;
|
|
37
37
|
var _f;
|
|
38
|
-
logger.log(`Command "openEyes" is called with ${
|
|
39
|
-
|
|
38
|
+
logger.log(`Command "openEyes" is called with ${target ? 'default driver and' : ''}`, ...(settings ? ['settings', settings] : []), eyes ? 'predefined eyes' : '');
|
|
39
|
+
const driver = target && (await (0, driver_1.makeDriver)({ spec, driver: target, logger, customConfig: settings }));
|
|
40
40
|
if (driver && !eyes) {
|
|
41
41
|
const currentContext = driver.currentContext;
|
|
42
42
|
(_a = settings.environment) !== null && _a !== void 0 ? _a : (settings.environment = {});
|
|
@@ -79,10 +79,10 @@ function makeOpenEyes({ core, spec, logger: defaultLogger, }) {
|
|
|
79
79
|
return utils.general.extend(baseEyes, eyes => ({
|
|
80
80
|
type: 'classic',
|
|
81
81
|
getBaseEyes,
|
|
82
|
-
check: (0, check_1.makeCheck)({ eyes, driver, spec, logger }),
|
|
83
|
-
checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ eyes, driver, spec, logger }),
|
|
84
|
-
locateText: (0, locate_text_1.makeLocateText)({ eyes, driver, spec, logger }),
|
|
85
|
-
extractText: (0, extract_text_1.makeExtractText)({ eyes, driver, spec, logger }),
|
|
82
|
+
check: (0, check_1.makeCheck)({ eyes, target: driver, spec, logger }),
|
|
83
|
+
checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ eyes, target: driver, spec, logger }),
|
|
84
|
+
locateText: (0, locate_text_1.makeLocateText)({ eyes, target: driver, spec, logger }),
|
|
85
|
+
extractText: (0, extract_text_1.makeExtractText)({ eyes, target: driver, spec, logger }),
|
|
86
86
|
}));
|
|
87
87
|
};
|
|
88
88
|
}
|
package/dist/close.js
CHANGED
|
@@ -7,7 +7,8 @@ function makeClose({ eyes, logger: defaultLogger, }) {
|
|
|
7
7
|
var _a;
|
|
8
8
|
settings = { ...config === null || config === void 0 ? void 0 : config.close, ...settings };
|
|
9
9
|
(_a = settings.updateBaselineIfNew) !== null && _a !== void 0 ? _a : (settings.updateBaselineIfNew = true);
|
|
10
|
-
const
|
|
10
|
+
const typedEyes = await eyes.getTypedEyes({ logger });
|
|
11
|
+
const results = await typedEyes.close({ settings, logger });
|
|
11
12
|
if (settings.throwErr) {
|
|
12
13
|
results.forEach(result => {
|
|
13
14
|
if (result.status !== 'Passed')
|
package/dist/extract-text.js
CHANGED
|
@@ -40,7 +40,8 @@ function makeExtractText({ eyes, logger: defaultLogger, }) {
|
|
|
40
40
|
settings = { ...config === null || config === void 0 ? void 0 : config.screenshot, ...settings };
|
|
41
41
|
(_a = settings.autProxy) !== null && _a !== void 0 ? _a : (settings.autProxy = eyes.test.server.proxy);
|
|
42
42
|
}
|
|
43
|
-
const
|
|
43
|
+
const classicEyes = await eyes.getTypedEyes({ type: 'classic', logger });
|
|
44
|
+
const results = await classicEyes.extractText({ target, settings, logger });
|
|
44
45
|
return results;
|
|
45
46
|
};
|
|
46
47
|
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeGetTypedEyes = void 0;
|
|
4
|
+
function makeGetTypedEyes({ type: defaultType, settings: defaultSettings, target, cores, logger: defaultLogger, }) {
|
|
5
|
+
let eyes;
|
|
6
|
+
return async function getTypesEyes({ type = defaultType, settings, logger = defaultLogger, } = {}) {
|
|
7
|
+
if (!eyes) {
|
|
8
|
+
eyes =
|
|
9
|
+
type === 'ufg'
|
|
10
|
+
? await cores.ufg.openEyes({ target, settings: defaultSettings, logger })
|
|
11
|
+
: await cores.classic.openEyes({ target, settings: defaultSettings, logger });
|
|
12
|
+
return eyes;
|
|
13
|
+
}
|
|
14
|
+
else if (eyes.type === type) {
|
|
15
|
+
return eyes;
|
|
16
|
+
}
|
|
17
|
+
else if (type === 'ufg') {
|
|
18
|
+
const baseEyes = await eyes.getBaseEyes();
|
|
19
|
+
return cores.ufg.openEyes({ target, settings: defaultSettings, eyes: baseEyes, logger });
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
const baseEyes = (await Promise.all(settings.renderers.map(renderer => eyes.getBaseEyes({ settings: { type: settings.type, renderer } })))).flat();
|
|
23
|
+
return cores.classic.openEyes({ target, settings: defaultSettings, eyes: baseEyes, logger });
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
exports.makeGetTypedEyes = makeGetTypedEyes;
|
package/dist/locate-text.js
CHANGED
|
@@ -6,7 +6,8 @@ function makeLocateText({ eyes, logger: defaultLogger, }) {
|
|
|
6
6
|
var _a;
|
|
7
7
|
settings = { ...config === null || config === void 0 ? void 0 : config.screenshot, ...settings };
|
|
8
8
|
(_a = settings.autProxy) !== null && _a !== void 0 ? _a : (settings.autProxy = eyes.test.server.proxy);
|
|
9
|
-
const
|
|
9
|
+
const classicEyes = await eyes.getTypedEyes({ type: 'classic', logger });
|
|
10
|
+
const results = await classicEyes.locateText({ target: target, settings, logger });
|
|
10
11
|
return results;
|
|
11
12
|
};
|
|
12
13
|
}
|
package/dist/make-manager.js
CHANGED
|
@@ -31,7 +31,7 @@ const open_eyes_1 = require("./open-eyes");
|
|
|
31
31
|
const close_manager_1 = require("./close-manager");
|
|
32
32
|
const utils = __importStar(require("@applitools/utils"));
|
|
33
33
|
function makeMakeManager({ spec, core, concurrency: defaultConcurrency = utils.general.getEnvValue('CONCURRENCY', 'number'), agentId: defaultAgentId, cwd = process.cwd(), logger: defaultLogger, }) {
|
|
34
|
-
return async function makeManager({ type, concurrency = defaultConcurrency, legacyConcurrency, agentId = type === 'ufg' ? defaultAgentId === null || defaultAgentId === void 0 ? void 0 : defaultAgentId.replace(/(\/\d)/, '.visualgrid$1') : defaultAgentId, logger = defaultLogger, } = {}) {
|
|
34
|
+
return async function makeManager({ type = 'classic', concurrency = defaultConcurrency, legacyConcurrency, agentId = type === 'ufg' ? defaultAgentId === null || defaultAgentId === void 0 ? void 0 : defaultAgentId.replace(/(\/\d)/, '.visualgrid$1') : defaultAgentId, logger = defaultLogger, } = {}) {
|
|
35
35
|
concurrency !== null && concurrency !== void 0 ? concurrency : (concurrency = utils.types.isInteger(legacyConcurrency) ? legacyConcurrency * 5 : 5);
|
|
36
36
|
core !== null && core !== void 0 ? core : (core = (0, core_base_1.makeCore)({ agentId, cwd, logger }));
|
|
37
37
|
const cores = {
|
package/dist/open-eyes.js
CHANGED
|
@@ -26,16 +26,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.makeOpenEyes = void 0;
|
|
27
27
|
const core_1 = require("./classic/core");
|
|
28
28
|
const core_2 = require("./ufg/core");
|
|
29
|
+
const get_typed_eyes_1 = require("./get-typed-eyes");
|
|
29
30
|
const check_1 = require("./check");
|
|
30
31
|
const check_and_close_1 = require("./check-and-close");
|
|
31
32
|
const locate_text_1 = require("./locate-text");
|
|
32
33
|
const extract_text_1 = require("./extract-text");
|
|
33
34
|
const close_1 = require("./close");
|
|
34
35
|
const utils = __importStar(require("@applitools/utils"));
|
|
35
|
-
function makeOpenEyes({ type: defaultType, concurrency, core, cores, spec, logger: defaultLogger, }) {
|
|
36
|
+
function makeOpenEyes({ type: defaultType = 'classic', concurrency, core, cores, spec, logger: defaultLogger, }) {
|
|
36
37
|
return async function openEyes({ type = defaultType, settings, config, target, logger = defaultLogger, }) {
|
|
37
38
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
38
|
-
var _v, _w, _x, _y
|
|
39
|
+
var _v, _w, _x, _y;
|
|
39
40
|
settings = { ...config === null || config === void 0 ? void 0 : config.open, ...settings };
|
|
40
41
|
(_a = settings.userTestId) !== null && _a !== void 0 ? _a : (settings.userTestId = `${settings.testName}--${utils.general.guid()}`);
|
|
41
42
|
(_b = settings.serverUrl) !== null && _b !== void 0 ? _b : (settings.serverUrl = (_c = utils.general.getEnvValue('SERVER_URL')) !== null && _c !== void 0 ? _c : 'https://eyesapi.applitools.com');
|
|
@@ -52,8 +53,9 @@ function makeOpenEyes({ type: defaultType, concurrency, core, cores, spec, logge
|
|
|
52
53
|
(_q = settings.ignoreBaseline) !== null && _q !== void 0 ? _q : (settings.ignoreBaseline = false);
|
|
53
54
|
(_r = settings.compareWithParentBranch) !== null && _r !== void 0 ? _r : (settings.compareWithParentBranch = false);
|
|
54
55
|
if (type === 'ufg') {
|
|
55
|
-
;
|
|
56
|
-
|
|
56
|
+
const ufgSettings = settings;
|
|
57
|
+
const ufgConfig = config;
|
|
58
|
+
(_s = ufgSettings.renderConcurrency) !== null && _s !== void 0 ? _s : (ufgSettings.renderConcurrency = (_u = (_t = ufgConfig === null || ufgConfig === void 0 ? void 0 : ufgConfig.check) === null || _t === void 0 ? void 0 : _t.renderers) === null || _u === void 0 ? void 0 : _u.length);
|
|
57
59
|
}
|
|
58
60
|
core.logEvent({
|
|
59
61
|
settings: {
|
|
@@ -71,33 +73,25 @@ function makeOpenEyes({ type: defaultType, concurrency, core, cores, spec, logge
|
|
|
71
73
|
},
|
|
72
74
|
logger,
|
|
73
75
|
});
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
76
|
+
const getTypedEyes = (0, get_typed_eyes_1.makeGetTypedEyes)({
|
|
77
|
+
type,
|
|
78
|
+
settings: settings,
|
|
79
|
+
target,
|
|
80
|
+
cores: cores !== null && cores !== void 0 ? cores : {
|
|
81
|
+
ufg: (0, core_2.makeCore)({ spec, core, concurrency: concurrency !== null && concurrency !== void 0 ? concurrency : 5, logger }),
|
|
82
|
+
classic: (0, core_1.makeCore)({ spec, core, logger }),
|
|
83
|
+
},
|
|
84
|
+
logger,
|
|
77
85
|
});
|
|
78
|
-
const eyes =
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
return eyes;
|
|
84
|
-
}
|
|
85
|
-
else if (type === 'ufg') {
|
|
86
|
-
const baseEyes = await eyes.getBaseEyes();
|
|
87
|
-
return cores.ufg.openEyes({ target, eyes: baseEyes, logger });
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
const baseEyes = (await Promise.all(renderers.map(renderer => eyes.getBaseEyes({ settings: { renderer, type: 'native' } })))).flat();
|
|
91
|
-
return cores.classic.openEyes({ target, eyes: baseEyes, logger });
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return utils.general.extend(eyes, {
|
|
95
|
-
check: (0, check_1.makeCheck)({ type, getTypedEyes, logger }),
|
|
96
|
-
checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ type, getTypedEyes, logger }),
|
|
86
|
+
const eyes = await getTypedEyes({ logger });
|
|
87
|
+
return utils.general.extend(eyes, eyes => ({
|
|
88
|
+
getTypedEyes,
|
|
89
|
+
check: (0, check_1.makeCheck)({ type, eyes, target, spec, logger }),
|
|
90
|
+
checkAndClose: (0, check_and_close_1.makeCheckAndClose)({ type, eyes, target, spec, logger }),
|
|
97
91
|
locateText: (0, locate_text_1.makeLocateText)({ eyes, logger }),
|
|
98
92
|
extractText: (0, extract_text_1.makeExtractText)({ eyes, logger }),
|
|
99
93
|
close: (0, close_1.makeClose)({ eyes, logger }),
|
|
100
|
-
});
|
|
94
|
+
}));
|
|
101
95
|
};
|
|
102
96
|
}
|
|
103
97
|
exports.makeOpenEyes = makeOpenEyes;
|
package/dist/types.js
CHANGED
package/dist/ufg/abort.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeAbort = void 0;
|
|
4
4
|
const abort_error_1 = require("../errors/abort-error");
|
|
5
|
-
function makeAbort({ storage, controller, logger: defaultLogger
|
|
5
|
+
function makeAbort({ storage, controller, logger: defaultLogger }) {
|
|
6
6
|
return async function ({ logger = defaultLogger, } = {}) {
|
|
7
7
|
controller.abort();
|
|
8
8
|
const tests = storage.reduce((tests, { renderer, promise }) => {
|
package/dist/ufg/check.js
CHANGED
|
@@ -35,9 +35,9 @@ const generate_safe_selectors_1 = require("./utils/generate-safe-selectors");
|
|
|
35
35
|
const abort_error_1 = require("../errors/abort-error");
|
|
36
36
|
const utils = __importStar(require("@applitools/utils"));
|
|
37
37
|
const chalk_1 = __importDefault(require("chalk"));
|
|
38
|
-
function makeCheck({ eyes, client,
|
|
39
|
-
return async function check({ settings = {},
|
|
40
|
-
var _a, _b;
|
|
38
|
+
function makeCheck({ eyes, client, target: defaultTarget, spec, signal, logger: defaultLogger, }) {
|
|
39
|
+
return async function check({ target = defaultTarget, settings = {}, logger = defaultLogger, }) {
|
|
40
|
+
var _a, _b, _c;
|
|
41
41
|
logger.log('Command "check" is called with settings', settings);
|
|
42
42
|
if (signal.aborted) {
|
|
43
43
|
logger.warn('Command "check" was called after test was already aborted');
|
|
@@ -45,8 +45,9 @@ function makeCheck({ eyes, client, driver: defaultDriver, spec, signal, logger:
|
|
|
45
45
|
}
|
|
46
46
|
const { elementReferencesToCalculate, elementReferenceToTarget, getBaseCheckSettings } = (0, to_base_check_settings_1.toBaseCheckSettings)({ settings });
|
|
47
47
|
let snapshots, snapshotUrl, snapshotTitle, userAgent, regionToTarget, selectorsToCalculate;
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
if ((0, driver_1.isDriver)(target, spec)) {
|
|
49
|
+
const driver = await (0, driver_1.makeDriver)({ spec, driver: target, logger });
|
|
50
|
+
await driver.currentContext.setScrollingElement((_a = settings.scrollRootElement) !== null && _a !== void 0 ? _a : null);
|
|
50
51
|
if (driver.isWeb && (!settings.renderers || settings.renderers.length === 0)) {
|
|
51
52
|
const viewportSize = await driver.getViewportSize();
|
|
52
53
|
settings.renderers = [{ name: 'chrome', ...viewportSize }];
|
|
@@ -60,7 +61,7 @@ function makeCheck({ eyes, client, driver: defaultDriver, spec, signal, logger:
|
|
|
60
61
|
});
|
|
61
62
|
cleanupGeneratedSelectors = generated.cleanupGeneratedSelectors;
|
|
62
63
|
if (elementReferenceToTarget) {
|
|
63
|
-
regionToTarget = (
|
|
64
|
+
regionToTarget = (_b = generated.selectors[0]) === null || _b === void 0 ? void 0 : _b.safeSelector;
|
|
64
65
|
if (!regionToTarget)
|
|
65
66
|
throw new Error('Target element not found');
|
|
66
67
|
selectorsToCalculate = generated.selectors.slice(1);
|
|
@@ -82,8 +83,12 @@ function makeCheck({ eyes, client, driver: defaultDriver, spec, signal, logger:
|
|
|
82
83
|
},
|
|
83
84
|
hooks: {
|
|
84
85
|
async beforeSnapshots() {
|
|
85
|
-
if (
|
|
86
|
-
await (0, wait_for_lazy_load_1.waitForLazyLoad)({
|
|
86
|
+
if (settings.lazyLoad && driver.isWeb) {
|
|
87
|
+
await (0, wait_for_lazy_load_1.waitForLazyLoad)({
|
|
88
|
+
context: driver.currentContext,
|
|
89
|
+
settings: settings.lazyLoad !== true ? settings.lazyLoad : {},
|
|
90
|
+
logger,
|
|
91
|
+
});
|
|
87
92
|
}
|
|
88
93
|
},
|
|
89
94
|
},
|
|
@@ -102,7 +107,7 @@ function makeCheck({ eyes, client, driver: defaultDriver, spec, signal, logger:
|
|
|
102
107
|
snapshots = !utils.types.isArray(target) ? Array(settings.renderers.length).fill(target) : target;
|
|
103
108
|
snapshotUrl = utils.types.has(snapshots[0], 'url') ? snapshots[0].url : undefined;
|
|
104
109
|
}
|
|
105
|
-
regionToTarget !== null && regionToTarget !== void 0 ? regionToTarget : (regionToTarget = (
|
|
110
|
+
regionToTarget !== null && regionToTarget !== void 0 ? regionToTarget : (regionToTarget = (_c = elementReferenceToTarget) !== null && _c !== void 0 ? _c : settings.region);
|
|
106
111
|
selectorsToCalculate !== null && selectorsToCalculate !== void 0 ? selectorsToCalculate : (selectorsToCalculate = elementReferencesToCalculate.map(selector => ({
|
|
107
112
|
originalSelector: selector,
|
|
108
113
|
safeSelector: selector,
|
|
@@ -27,29 +27,13 @@ exports.makeGetBaseEyes = void 0;
|
|
|
27
27
|
const utils = __importStar(require("@applitools/utils"));
|
|
28
28
|
function makeGetBaseEyes({ settings: defaultSettings, core, client, eyes, logger: defaultLogger }) {
|
|
29
29
|
const getBaseEyesWithCache = utils.general.cachify(getBaseEyes, ([options]) => options === null || options === void 0 ? void 0 : options.settings);
|
|
30
|
-
if (eyes)
|
|
30
|
+
if (eyes)
|
|
31
31
|
eyes.forEach(eyes => getBaseEyesWithCache.setCachedValue(eyes.test.rendererInfo, Promise.resolve([eyes])));
|
|
32
|
-
}
|
|
33
32
|
return getBaseEyesWithCache;
|
|
34
33
|
async function getBaseEyes({ settings, logger = defaultLogger, } = {}) {
|
|
35
34
|
logger.log(`Command "getBaseEyes" is called with settings`, settings);
|
|
36
35
|
const environment = await client.bookRenderer({ settings });
|
|
37
36
|
const eyes = await core.openEyes({ settings: { ...defaultSettings, environment }, logger });
|
|
38
|
-
const aborted = utils.promises.makeControlledPromise();
|
|
39
|
-
const queue = [];
|
|
40
|
-
eyes.check = utils.general.wrap(eyes.check, async (check, options) => {
|
|
41
|
-
var _a, _b;
|
|
42
|
-
var _c;
|
|
43
|
-
const index = options.settings.stepIndex;
|
|
44
|
-
(_a = queue[index]) !== null && _a !== void 0 ? _a : (queue[index] = utils.promises.makeControlledPromise());
|
|
45
|
-
if (index > 0)
|
|
46
|
-
await Promise.race([((_b = queue[_c = index - 1]) !== null && _b !== void 0 ? _b : (queue[_c] = utils.promises.makeControlledPromise())), aborted]);
|
|
47
|
-
return check(options).finally(queue[index].resolve);
|
|
48
|
-
});
|
|
49
|
-
eyes.abort = utils.general.wrap(eyes.abort, async (abort, options) => {
|
|
50
|
-
aborted.reject(new Error('Command "check" was aborted due to possible error in previous step'));
|
|
51
|
-
return abort(options);
|
|
52
|
-
});
|
|
53
37
|
return [eyes];
|
|
54
38
|
}
|
|
55
39
|
}
|