@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 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.52.1",
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 --parallel --jobs ${MOCHA_JOBS:-2} 'test/e2e/**/*.test.js'",
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.40.0",
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.4",
61
- "@applitools/utils": "1.8.2",
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.0",
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@6.5.0",
89
- "cypress8": "npm:cypress@^8.7.0",
90
- "cypress9": "npm:cypress@^9.0.0",
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)