@applitools/eyes-cypress 3.52.1 → 3.53.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 +101 -0
- package/dist/browser/spec-driver.js +10 -1
- package/package.json +11 -10
- package/src/browser/socketCommands.js +5 -0
- package/src/browser/spec-driver.ts +11 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,106 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.53.0](https://github.com/Applitools-Dev/sdk/compare/js/eyes-cypress@3.52.1...js/eyes-cypress@3.53.0) (2025-07-07)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Dependencies
|
|
12
|
+
|
|
13
|
+
* @applitools/utils bumped to 1.9.0
|
|
14
|
+
#### Features
|
|
15
|
+
|
|
16
|
+
* support https_proxy and http_proxy env variables | FLD-2702 ([#3046](https://github.com/Applitools-Dev/sdk/issues/3046)) ([0633809](https://github.com/Applitools-Dev/sdk/commit/06338099f44bfb149a5829f62c2f9b19e2392850))
|
|
17
|
+
* @applitools/logger bumped to 2.1.5
|
|
18
|
+
|
|
19
|
+
* @applitools/dom-snapshot bumped to 4.12.0
|
|
20
|
+
#### Features
|
|
21
|
+
|
|
22
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
#### Bug Fixes
|
|
26
|
+
|
|
27
|
+
* support for programmatically added nested css rules | FLD-3212 ([#3049](https://github.com/Applitools-Dev/sdk/issues/3049)) ([5abb0f7](https://github.com/Applitools-Dev/sdk/commit/5abb0f7904c4d9e4b716291abecad54554b9ca01))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
* @applitools/socket bumped to 1.2.6
|
|
32
|
+
|
|
33
|
+
* @applitools/req bumped to 1.7.14
|
|
34
|
+
|
|
35
|
+
* @applitools/image bumped to 1.1.21
|
|
36
|
+
|
|
37
|
+
* @applitools/driver bumped to 1.22.0
|
|
38
|
+
#### Features
|
|
39
|
+
|
|
40
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
* @applitools/spec-driver-webdriver bumped to 1.3.0
|
|
45
|
+
#### Features
|
|
46
|
+
|
|
47
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
48
|
+
* support https_proxy and http_proxy env variables | FLD-2702 ([#3046](https://github.com/Applitools-Dev/sdk/issues/3046)) ([0633809](https://github.com/Applitools-Dev/sdk/commit/06338099f44bfb149a5829f62c2f9b19e2392850))
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
* @applitools/spec-driver-selenium bumped to 1.6.0
|
|
53
|
+
#### Features
|
|
54
|
+
|
|
55
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
* @applitools/spec-driver-puppeteer bumped to 1.5.0
|
|
60
|
+
#### Features
|
|
61
|
+
|
|
62
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
* @applitools/screenshoter bumped to 3.11.6
|
|
67
|
+
|
|
68
|
+
* @applitools/nml-client bumped to 1.9.6
|
|
69
|
+
#### Bug Fixes
|
|
70
|
+
|
|
71
|
+
* add retries for ConnectEnomem errors | FLD-3015 ([#3052](https://github.com/Applitools-Dev/sdk/issues/3052)) ([92caa45](https://github.com/Applitools-Dev/sdk/commit/92caa452b4a6d6f86c903548b40f8207a0ed11d0))
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
* @applitools/core-base bumped to 1.25.5
|
|
76
|
+
#### Bug Fixes
|
|
77
|
+
|
|
78
|
+
* add retries for ConnectEnomem errors | FLD-3015 ([#3052](https://github.com/Applitools-Dev/sdk/issues/3052)) ([92caa45](https://github.com/Applitools-Dev/sdk/commit/92caa452b4a6d6f86c903548b40f8207a0ed11d0))
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
* @applitools/tunnel-client bumped to 1.8.1
|
|
83
|
+
|
|
84
|
+
* @applitools/ufg-client bumped to 1.16.13
|
|
85
|
+
|
|
86
|
+
* @applitools/ec-client bumped to 1.10.16
|
|
87
|
+
|
|
88
|
+
* @applitools/core bumped to 4.41.0
|
|
89
|
+
#### Features
|
|
90
|
+
|
|
91
|
+
* canvas webgl without preserveDrawingBuffer=1 | FLD-3144 ([#3040](https://github.com/Applitools-Dev/sdk/issues/3040)) ([f82d8f1](https://github.com/Applitools-Dev/sdk/commit/f82d8f148f913098752ec7bef8635a46b453d6fa))
|
|
92
|
+
* support https_proxy and http_proxy env variables | FLD-2702 ([#3046](https://github.com/Applitools-Dev/sdk/issues/3046)) ([0633809](https://github.com/Applitools-Dev/sdk/commit/06338099f44bfb149a5829f62c2f9b19e2392850))
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
#### Bug Fixes
|
|
96
|
+
|
|
97
|
+
* add retries for ConnectEnomem errors | FLD-3015 ([#3052](https://github.com/Applitools-Dev/sdk/issues/3052)) ([92caa45](https://github.com/Applitools-Dev/sdk/commit/92caa452b4a6d6f86c903548b40f8207a0ed11d0))
|
|
98
|
+
* determine storybook 9 version | AD-10406 ([#3054](https://github.com/Applitools-Dev/sdk/issues/3054)) ([23486bf](https://github.com/Applitools-Dev/sdk/commit/23486bf1c9dc905d243239214e0e838d54c0b3c2))
|
|
99
|
+
* support for programmatically added nested css rules | FLD-3212 ([#3049](https://github.com/Applitools-Dev/sdk/issues/3049)) ([5abb0f7](https://github.com/Applitools-Dev/sdk/commit/5abb0f7904c4d9e4b716291abecad54554b9ca01))
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
3
104
|
## [3.52.1](https://github.com/Applitools-Dev/sdk/compare/js/eyes-cypress@3.52.0...js/eyes-cypress@3.52.1) (2025-06-15)
|
|
4
105
|
|
|
5
106
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.executeUserFunction = exports.reload = exports.getCookies = exports.getUrl = exports.getTitle = exports.findElements = exports.findElement = exports.transformSelector = exports.setViewportSize = exports.getViewportSize = exports.childContext = exports.parentContext = exports.mainContext = exports.executeScript = void 0;
|
|
3
|
+
exports.executeUserFunction = exports.reload = exports.executeBrowserCommands = exports.getCookies = exports.getUrl = exports.getTitle = exports.findElements = exports.findElement = exports.transformSelector = exports.setViewportSize = exports.getViewportSize = exports.childContext = exports.parentContext = exports.mainContext = exports.executeScript = void 0;
|
|
4
4
|
function executeScript(context, script, arg) {
|
|
5
5
|
let scriptToExecute;
|
|
6
6
|
if (script.includes('dom-snapshot') || script.includes('dom-capture') || script.includes('dom-shared')) {
|
|
@@ -110,6 +110,15 @@ function getCookies() {
|
|
|
110
110
|
return Cypress.automation('get:cookies', {});
|
|
111
111
|
}
|
|
112
112
|
exports.getCookies = getCookies;
|
|
113
|
+
async function executeBrowserCommands({ commands }) {
|
|
114
|
+
let lastResponse;
|
|
115
|
+
for (const currentCommand of commands) {
|
|
116
|
+
lastResponse = await Cypress.automation('remote:debugger:protocol', currentCommand);
|
|
117
|
+
Cypress.log({ name: 'executeBrowserCommands', message: { command: currentCommand.command, lastResponse } });
|
|
118
|
+
}
|
|
119
|
+
return lastResponse;
|
|
120
|
+
}
|
|
121
|
+
exports.executeBrowserCommands = executeBrowserCommands;
|
|
113
122
|
function reload() {
|
|
114
123
|
return new Promise(resolve => {
|
|
115
124
|
cy.once('window:load', resolve);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@applitools/eyes-cypress",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.53.0",
|
|
4
4
|
"homepage": "https://applitools.com/tutorials/sdks/cypress",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -40,10 +40,10 @@
|
|
|
40
40
|
"test:ts:run:12": "yarn cypress12 run --project ./test/e2e/ts --config-file ./cypress-12.config.ts",
|
|
41
41
|
"cypress13": "../../node_modules/cypress13/bin/cypress",
|
|
42
42
|
"test:ts:run:13": "yarn cypress13 run --project ./test/e2e/ts --config-file ./cypress-13.config.ts",
|
|
43
|
-
"test:ts:run": "yarn cypress$APPLITOOLS_FRAMEWORK_VERSION run --project ./test/e2e/ts --config-file ./cypress-$APPLITOOLS_FRAMEWORK_VERSION.config.ts",
|
|
43
|
+
"test:ts:run": "yarn cypress$APPLITOOLS_FRAMEWORK_VERSION run --browser chrome --project ./test/e2e/ts --config-file ./cypress-$APPLITOOLS_FRAMEWORK_VERSION.config.ts",
|
|
44
44
|
"test:coverage": "cd test/generic && yarn && MOCHA_GROUP=coverage APPLITOOLS_BATCH_NAME='JS Coverage Tests: eyes-cypress' APPLITOOLS_BATCH_ID=$(uuidgen) npx cypress run",
|
|
45
45
|
"test:coverage:chrome": "cd test/generic && yarn && MOCHA_GROUP=coverage APPLITOOLS_BATCH_NAME='JS Coverage Tests: eyes-cypress' APPLITOOLS_BATCH_ID=$(uuidgen) npx cypress run --browser chrome",
|
|
46
|
-
"test:e2e": "MOCHA_GROUP=e2e mkdir -p test/fixtures/testAppCopies && run --top-level mocha --no-timeouts
|
|
46
|
+
"test:e2e": "MOCHA_GROUP=e2e mkdir -p test/fixtures/testAppCopies && run --top-level mocha --no-timeouts 'test/e2e/**/*.test.js'",
|
|
47
47
|
"test:components": "cd test/components && yarn && npx cypress run --component",
|
|
48
48
|
"cypress": "cypress open --config-file test/fixtures/cypress-play.json",
|
|
49
49
|
"cypress:new": "cd test/play && yarn && npx cypress open",
|
|
@@ -54,11 +54,11 @@
|
|
|
54
54
|
"setup": "run --top-level xvfb:setup"
|
|
55
55
|
},
|
|
56
56
|
"dependencies": {
|
|
57
|
-
"@applitools/core": "4.
|
|
57
|
+
"@applitools/core": "4.41.0",
|
|
58
58
|
"@applitools/eyes": "1.35.1",
|
|
59
59
|
"@applitools/functional-commons": "1.6.0",
|
|
60
|
-
"@applitools/logger": "2.1.
|
|
61
|
-
"@applitools/utils": "1.
|
|
60
|
+
"@applitools/logger": "2.1.5",
|
|
61
|
+
"@applitools/utils": "1.9.0",
|
|
62
62
|
"boxen": "5.1.2",
|
|
63
63
|
"chalk": "3.0.0",
|
|
64
64
|
"semver": "7.6.2",
|
|
@@ -72,6 +72,7 @@
|
|
|
72
72
|
"@applitools/snaptdout": "^1.0.0",
|
|
73
73
|
"@applitools/test-server": "^1.2.3",
|
|
74
74
|
"@applitools/test-utils": "^1.5.17",
|
|
75
|
+
"@types/he": "^1",
|
|
75
76
|
"@types/node": "^12.20.55",
|
|
76
77
|
"@types/semver": "^7.5.8",
|
|
77
78
|
"@types/uuid": "^9.0.0",
|
|
@@ -79,15 +80,15 @@
|
|
|
79
80
|
"chai": "4.2.0",
|
|
80
81
|
"chai-spies": "1.0.0",
|
|
81
82
|
"cookie-parser": "1.4.4",
|
|
82
|
-
"cypress": "9.7
|
|
83
|
+
"cypress": "^9.7",
|
|
83
84
|
"cypress-multi-reporters": "^1.6.3",
|
|
84
85
|
"cypress10": "npm:cypress@^10.0.0",
|
|
85
86
|
"cypress11": "npm:cypress@^11.0.0",
|
|
86
87
|
"cypress12": "npm:cypress@^12.0.0",
|
|
87
88
|
"cypress13": "npm:cypress@^13.0.0",
|
|
88
|
-
"cypress6.5": "npm:cypress
|
|
89
|
-
"
|
|
90
|
-
"
|
|
89
|
+
"cypress6.5": "npm:cypress@^6.5",
|
|
90
|
+
"cypress9": "npm:cypress@^9.7",
|
|
91
|
+
"he": "^1.2.0",
|
|
91
92
|
"jsdom": "^25.0.1",
|
|
92
93
|
"lodash.omit": "4.5.0",
|
|
93
94
|
"mocha": "^10.2.0",
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
const spec = require('../../dist/browser/spec-driver')
|
|
2
|
+
// import * as spec from './spec-driver'
|
|
2
3
|
const {derefArgs} = require('./derefArgs')
|
|
3
4
|
|
|
4
5
|
function socketCommands(socket, refer) {
|
|
@@ -46,6 +47,10 @@ function socketCommands(socket, refer) {
|
|
|
46
47
|
return await spec.getCookies()
|
|
47
48
|
})
|
|
48
49
|
|
|
50
|
+
socket.command('Driver.executeBrowserCommands', async ({commands}) => {
|
|
51
|
+
return await spec.executeBrowserCommands({commands})
|
|
52
|
+
})
|
|
53
|
+
|
|
49
54
|
socket.command('Driver.reload', async () => {
|
|
50
55
|
await spec.reload()
|
|
51
56
|
})
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type {BrowserCommand} from '@applitools/driver'
|
|
2
|
+
|
|
1
3
|
type EyesSelector = {selector: string; type?: string}
|
|
2
4
|
export type Selector = (string | EyesSelector) & {__applitoolsBrand?: never}
|
|
3
5
|
export type Context = Document & {__applitoolsBrand?: never}
|
|
@@ -112,6 +114,15 @@ export function getCookies(): Array<any> {
|
|
|
112
114
|
return Cypress.automation('get:cookies', {})
|
|
113
115
|
}
|
|
114
116
|
|
|
117
|
+
export async function executeBrowserCommands({commands}: {commands: BrowserCommand[]}): Promise<any> {
|
|
118
|
+
let lastResponse
|
|
119
|
+
for (const currentCommand of commands) {
|
|
120
|
+
lastResponse = await Cypress.automation('remote:debugger:protocol', currentCommand)
|
|
121
|
+
Cypress.log({name: 'executeBrowserCommands', message: {command: currentCommand.command, lastResponse}})
|
|
122
|
+
}
|
|
123
|
+
return lastResponse
|
|
124
|
+
}
|
|
125
|
+
|
|
115
126
|
export function reload(): Promise<void> {
|
|
116
127
|
return new Promise(resolve => {
|
|
117
128
|
cy.once('window:load', resolve)
|