@testim/testim-cli 3.223.0 → 3.224.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/commons/testimDesiredCapabilitiesBuilder.js +6 -1
- package/npm-shrinkwrap.json +106 -106
- package/package.json +1 -1
- package/reports/debugReporter.js +6 -5
- package/runner.js +1 -1
- package/runners/TestPlanRunner.js +4 -0
- package/services/gridService.js +8 -14
- package/services/gridService.test.js +6 -13
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/* eslint-disable camelcase */
|
|
2
|
+
|
|
1
3
|
'use strict';
|
|
2
4
|
|
|
3
5
|
const crypto = require('crypto');
|
|
@@ -123,7 +125,7 @@ function readFileToBase64(fileLocation) {
|
|
|
123
125
|
return fs.readFileSync(fileLocation, { encoding: 'base64' });
|
|
124
126
|
}
|
|
125
127
|
|
|
126
|
-
function setCustomExtension(customExtensionLocalLocation
|
|
128
|
+
function setCustomExtension(customExtensionLocalLocation, extensions, lambdatestService) {
|
|
127
129
|
if (lambdatestService && lambdatestService.isLambdatestRun() && utils.isURL(customExtensionLocalLocation)) {
|
|
128
130
|
return;
|
|
129
131
|
}
|
|
@@ -176,6 +178,9 @@ function _buildChromiumOptions(opts, browserOptions, testRunConfig, customExtens
|
|
|
176
178
|
'profile.default_content_setting_values.automatic_downloads': CONTENT_SETTING.CONTENT_SETTING_ALLOW,
|
|
177
179
|
// disable pdf viewer
|
|
178
180
|
'plugins.always_open_pdf_externally': true,
|
|
181
|
+
// unintuitively stops download protection ("Dangerous file blocked")
|
|
182
|
+
// if needed in the future, consider adding --safebrowsing-disable-download-protection or --safebrowsing-disable-extension-blacklist to the chrome flags
|
|
183
|
+
'safebrowsing.enabled': true,
|
|
179
184
|
'profile.content_settings.exceptions.clipboard': {
|
|
180
185
|
'[*.],*': { last_modified: Date.now(), setting: 1 },
|
|
181
186
|
},
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@testim/testim-cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.224.0",
|
|
4
4
|
"lockfileVersion": 2,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@testim/testim-cli",
|
|
9
|
-
"version": "3.
|
|
9
|
+
"version": "3.224.0",
|
|
10
10
|
"license": "Proprietary",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@applitools/eyes-sdk-core": "13.0.0",
|
|
@@ -103,9 +103,9 @@
|
|
|
103
103
|
}
|
|
104
104
|
},
|
|
105
105
|
"node_modules/@ampproject/remapping": {
|
|
106
|
-
"version": "2.1.
|
|
107
|
-
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.
|
|
108
|
-
"integrity": "sha512-
|
|
106
|
+
"version": "2.1.2",
|
|
107
|
+
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz",
|
|
108
|
+
"integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==",
|
|
109
109
|
"dev": true,
|
|
110
110
|
"dependencies": {
|
|
111
111
|
"@jridgewell/trace-mapping": "^0.3.0"
|
|
@@ -500,20 +500,20 @@
|
|
|
500
500
|
}
|
|
501
501
|
},
|
|
502
502
|
"node_modules/@babel/core": {
|
|
503
|
-
"version": "7.17.
|
|
504
|
-
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.
|
|
505
|
-
"integrity": "sha512
|
|
503
|
+
"version": "7.17.5",
|
|
504
|
+
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz",
|
|
505
|
+
"integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==",
|
|
506
506
|
"dev": true,
|
|
507
507
|
"dependencies": {
|
|
508
|
-
"@ampproject/remapping": "^2.
|
|
508
|
+
"@ampproject/remapping": "^2.1.0",
|
|
509
509
|
"@babel/code-frame": "^7.16.7",
|
|
510
|
-
"@babel/generator": "^7.17.
|
|
510
|
+
"@babel/generator": "^7.17.3",
|
|
511
511
|
"@babel/helper-compilation-targets": "^7.16.7",
|
|
512
512
|
"@babel/helper-module-transforms": "^7.16.7",
|
|
513
513
|
"@babel/helpers": "^7.17.2",
|
|
514
|
-
"@babel/parser": "^7.17.
|
|
514
|
+
"@babel/parser": "^7.17.3",
|
|
515
515
|
"@babel/template": "^7.16.7",
|
|
516
|
-
"@babel/traverse": "^7.17.
|
|
516
|
+
"@babel/traverse": "^7.17.3",
|
|
517
517
|
"@babel/types": "^7.17.0",
|
|
518
518
|
"convert-source-map": "^1.7.0",
|
|
519
519
|
"debug": "^4.1.0",
|
|
@@ -548,9 +548,9 @@
|
|
|
548
548
|
}
|
|
549
549
|
},
|
|
550
550
|
"node_modules/@babel/generator": {
|
|
551
|
-
"version": "7.17.
|
|
552
|
-
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.
|
|
553
|
-
"integrity": "sha512
|
|
551
|
+
"version": "7.17.3",
|
|
552
|
+
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz",
|
|
553
|
+
"integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==",
|
|
554
554
|
"dev": true,
|
|
555
555
|
"dependencies": {
|
|
556
556
|
"@babel/types": "^7.17.0",
|
|
@@ -794,9 +794,9 @@
|
|
|
794
794
|
}
|
|
795
795
|
},
|
|
796
796
|
"node_modules/@babel/parser": {
|
|
797
|
-
"version": "7.17.
|
|
798
|
-
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.
|
|
799
|
-
"integrity": "sha512-
|
|
797
|
+
"version": "7.17.3",
|
|
798
|
+
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz",
|
|
799
|
+
"integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==",
|
|
800
800
|
"dev": true,
|
|
801
801
|
"bin": {
|
|
802
802
|
"parser": "bin/babel-parser.js"
|
|
@@ -831,18 +831,18 @@
|
|
|
831
831
|
}
|
|
832
832
|
},
|
|
833
833
|
"node_modules/@babel/traverse": {
|
|
834
|
-
"version": "7.17.
|
|
835
|
-
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.
|
|
836
|
-
"integrity": "sha512-
|
|
834
|
+
"version": "7.17.3",
|
|
835
|
+
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz",
|
|
836
|
+
"integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==",
|
|
837
837
|
"dev": true,
|
|
838
838
|
"dependencies": {
|
|
839
839
|
"@babel/code-frame": "^7.16.7",
|
|
840
|
-
"@babel/generator": "^7.17.
|
|
840
|
+
"@babel/generator": "^7.17.3",
|
|
841
841
|
"@babel/helper-environment-visitor": "^7.16.7",
|
|
842
842
|
"@babel/helper-function-name": "^7.16.7",
|
|
843
843
|
"@babel/helper-hoist-variables": "^7.16.7",
|
|
844
844
|
"@babel/helper-split-export-declaration": "^7.16.7",
|
|
845
|
-
"@babel/parser": "^7.17.
|
|
845
|
+
"@babel/parser": "^7.17.3",
|
|
846
846
|
"@babel/types": "^7.17.0",
|
|
847
847
|
"debug": "^4.1.0",
|
|
848
848
|
"globals": "^11.1.0"
|
|
@@ -2899,15 +2899,15 @@
|
|
|
2899
2899
|
"dev": true
|
|
2900
2900
|
},
|
|
2901
2901
|
"node_modules/browserslist": {
|
|
2902
|
-
"version": "4.19.
|
|
2903
|
-
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.
|
|
2904
|
-
"integrity": "sha512-
|
|
2902
|
+
"version": "4.19.3",
|
|
2903
|
+
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz",
|
|
2904
|
+
"integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==",
|
|
2905
2905
|
"dev": true,
|
|
2906
2906
|
"dependencies": {
|
|
2907
|
-
"caniuse-lite": "^1.0.
|
|
2908
|
-
"electron-to-chromium": "^1.4.
|
|
2907
|
+
"caniuse-lite": "^1.0.30001312",
|
|
2908
|
+
"electron-to-chromium": "^1.4.71",
|
|
2909
2909
|
"escalade": "^3.1.1",
|
|
2910
|
-
"node-releases": "^2.0.
|
|
2910
|
+
"node-releases": "^2.0.2",
|
|
2911
2911
|
"picocolors": "^1.0.0"
|
|
2912
2912
|
},
|
|
2913
2913
|
"bin": {
|
|
@@ -4591,14 +4591,14 @@
|
|
|
4591
4591
|
}
|
|
4592
4592
|
},
|
|
4593
4593
|
"node_modules/degenerator": {
|
|
4594
|
-
"version": "3.0.
|
|
4595
|
-
"resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.
|
|
4596
|
-
"integrity": "sha512-
|
|
4594
|
+
"version": "3.0.2",
|
|
4595
|
+
"resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.2.tgz",
|
|
4596
|
+
"integrity": "sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==",
|
|
4597
4597
|
"dependencies": {
|
|
4598
4598
|
"ast-types": "^0.13.2",
|
|
4599
4599
|
"escodegen": "^1.8.1",
|
|
4600
4600
|
"esprima": "^4.0.0",
|
|
4601
|
-
"vm2": "^3.9.
|
|
4601
|
+
"vm2": "^3.9.8"
|
|
4602
4602
|
},
|
|
4603
4603
|
"engines": {
|
|
4604
4604
|
"node": ">= 6"
|
|
@@ -4831,9 +4831,9 @@
|
|
|
4831
4831
|
}
|
|
4832
4832
|
},
|
|
4833
4833
|
"node_modules/electron-to-chromium": {
|
|
4834
|
-
"version": "1.4.
|
|
4835
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.
|
|
4836
|
-
"integrity": "sha512-
|
|
4834
|
+
"version": "1.4.71",
|
|
4835
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz",
|
|
4836
|
+
"integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==",
|
|
4837
4837
|
"dev": true
|
|
4838
4838
|
},
|
|
4839
4839
|
"node_modules/emoji-regex": {
|
|
@@ -5773,9 +5773,9 @@
|
|
|
5773
5773
|
"integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw=="
|
|
5774
5774
|
},
|
|
5775
5775
|
"node_modules/follow-redirects": {
|
|
5776
|
-
"version": "1.14.
|
|
5777
|
-
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.
|
|
5778
|
-
"integrity": "sha512-
|
|
5776
|
+
"version": "1.14.9",
|
|
5777
|
+
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz",
|
|
5778
|
+
"integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==",
|
|
5779
5779
|
"funding": [
|
|
5780
5780
|
{
|
|
5781
5781
|
"type": "individual",
|
|
@@ -6353,9 +6353,9 @@
|
|
|
6353
6353
|
}
|
|
6354
6354
|
},
|
|
6355
6355
|
"node_modules/globule/node_modules/minimatch": {
|
|
6356
|
-
"version": "3.0.
|
|
6357
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.
|
|
6358
|
-
"integrity": "sha512-
|
|
6356
|
+
"version": "3.0.8",
|
|
6357
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz",
|
|
6358
|
+
"integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==",
|
|
6359
6359
|
"dependencies": {
|
|
6360
6360
|
"brace-expansion": "^1.1.7"
|
|
6361
6361
|
},
|
|
@@ -8404,9 +8404,9 @@
|
|
|
8404
8404
|
}
|
|
8405
8405
|
},
|
|
8406
8406
|
"node_modules/marky": {
|
|
8407
|
-
"version": "1.2.
|
|
8408
|
-
"resolved": "https://registry.npmjs.org/marky/-/marky-1.2.
|
|
8409
|
-
"integrity": "sha512-
|
|
8407
|
+
"version": "1.2.4",
|
|
8408
|
+
"resolved": "https://registry.npmjs.org/marky/-/marky-1.2.4.tgz",
|
|
8409
|
+
"integrity": "sha512-zd2/GiSn6U3/jeFVZ0J9CA1LzQ8RfIVvXkb/U0swFHF/zT+dVohTAWjmo2DcIuofmIIIROlwTbd+shSeXmxr0w=="
|
|
8410
8410
|
},
|
|
8411
8411
|
"node_modules/matchdep": {
|
|
8412
8412
|
"version": "2.0.0",
|
|
@@ -8658,9 +8658,9 @@
|
|
|
8658
8658
|
}
|
|
8659
8659
|
},
|
|
8660
8660
|
"node_modules/minimatch": {
|
|
8661
|
-
"version": "3.1.
|
|
8662
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.
|
|
8663
|
-
"integrity": "sha512-
|
|
8661
|
+
"version": "3.1.2",
|
|
8662
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
|
8663
|
+
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
|
8664
8664
|
"dependencies": {
|
|
8665
8665
|
"brace-expansion": "^1.1.7"
|
|
8666
8666
|
},
|
|
@@ -14546,9 +14546,9 @@
|
|
|
14546
14546
|
}
|
|
14547
14547
|
},
|
|
14548
14548
|
"node_modules/socket.io-parser": {
|
|
14549
|
-
"version": "4.1.
|
|
14550
|
-
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.
|
|
14551
|
-
"integrity": "sha512-
|
|
14549
|
+
"version": "4.1.2",
|
|
14550
|
+
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.2.tgz",
|
|
14551
|
+
"integrity": "sha512-j3kk71QLJuyQ/hh5F/L2t1goqzdTL0gvDzuhTuNSwihfuFUrcSji0qFZmJJPtG6Rmug153eOPsUizeirf1IIog==",
|
|
14552
14552
|
"dependencies": {
|
|
14553
14553
|
"@socket.io/component-emitter": "~3.0.0",
|
|
14554
14554
|
"debug": "~4.3.1"
|
|
@@ -16135,9 +16135,9 @@
|
|
|
16135
16135
|
}
|
|
16136
16136
|
},
|
|
16137
16137
|
"node_modules/vm2": {
|
|
16138
|
-
"version": "3.9.
|
|
16139
|
-
"resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.
|
|
16140
|
-
"integrity": "sha512
|
|
16138
|
+
"version": "3.9.8",
|
|
16139
|
+
"resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.8.tgz",
|
|
16140
|
+
"integrity": "sha512-/1PYg/BwdKzMPo8maOZ0heT7DLI0DAFTm7YQaz/Lim9oIaFZsJs3EdtalvXuBfZwczNwsYhju75NW4d6E+4q+w==",
|
|
16141
16141
|
"dependencies": {
|
|
16142
16142
|
"acorn": "^8.7.0",
|
|
16143
16143
|
"acorn-walk": "^8.2.0"
|
|
@@ -16732,9 +16732,9 @@
|
|
|
16732
16732
|
},
|
|
16733
16733
|
"dependencies": {
|
|
16734
16734
|
"@ampproject/remapping": {
|
|
16735
|
-
"version": "2.1.
|
|
16736
|
-
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.
|
|
16737
|
-
"integrity": "sha512-
|
|
16735
|
+
"version": "2.1.2",
|
|
16736
|
+
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz",
|
|
16737
|
+
"integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==",
|
|
16738
16738
|
"dev": true,
|
|
16739
16739
|
"requires": {
|
|
16740
16740
|
"@jridgewell/trace-mapping": "^0.3.0"
|
|
@@ -17045,20 +17045,20 @@
|
|
|
17045
17045
|
"dev": true
|
|
17046
17046
|
},
|
|
17047
17047
|
"@babel/core": {
|
|
17048
|
-
"version": "7.17.
|
|
17049
|
-
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.
|
|
17050
|
-
"integrity": "sha512
|
|
17048
|
+
"version": "7.17.5",
|
|
17049
|
+
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz",
|
|
17050
|
+
"integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==",
|
|
17051
17051
|
"dev": true,
|
|
17052
17052
|
"requires": {
|
|
17053
|
-
"@ampproject/remapping": "^2.
|
|
17053
|
+
"@ampproject/remapping": "^2.1.0",
|
|
17054
17054
|
"@babel/code-frame": "^7.16.7",
|
|
17055
|
-
"@babel/generator": "^7.17.
|
|
17055
|
+
"@babel/generator": "^7.17.3",
|
|
17056
17056
|
"@babel/helper-compilation-targets": "^7.16.7",
|
|
17057
17057
|
"@babel/helper-module-transforms": "^7.16.7",
|
|
17058
17058
|
"@babel/helpers": "^7.17.2",
|
|
17059
|
-
"@babel/parser": "^7.17.
|
|
17059
|
+
"@babel/parser": "^7.17.3",
|
|
17060
17060
|
"@babel/template": "^7.16.7",
|
|
17061
|
-
"@babel/traverse": "^7.17.
|
|
17061
|
+
"@babel/traverse": "^7.17.3",
|
|
17062
17062
|
"@babel/types": "^7.17.0",
|
|
17063
17063
|
"convert-source-map": "^1.7.0",
|
|
17064
17064
|
"debug": "^4.1.0",
|
|
@@ -17085,9 +17085,9 @@
|
|
|
17085
17085
|
}
|
|
17086
17086
|
},
|
|
17087
17087
|
"@babel/generator": {
|
|
17088
|
-
"version": "7.17.
|
|
17089
|
-
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.
|
|
17090
|
-
"integrity": "sha512
|
|
17088
|
+
"version": "7.17.3",
|
|
17089
|
+
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz",
|
|
17090
|
+
"integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==",
|
|
17091
17091
|
"dev": true,
|
|
17092
17092
|
"requires": {
|
|
17093
17093
|
"@babel/types": "^7.17.0",
|
|
@@ -17275,9 +17275,9 @@
|
|
|
17275
17275
|
}
|
|
17276
17276
|
},
|
|
17277
17277
|
"@babel/parser": {
|
|
17278
|
-
"version": "7.17.
|
|
17279
|
-
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.
|
|
17280
|
-
"integrity": "sha512-
|
|
17278
|
+
"version": "7.17.3",
|
|
17279
|
+
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz",
|
|
17280
|
+
"integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==",
|
|
17281
17281
|
"dev": true
|
|
17282
17282
|
},
|
|
17283
17283
|
"@babel/runtime": {
|
|
@@ -17300,18 +17300,18 @@
|
|
|
17300
17300
|
}
|
|
17301
17301
|
},
|
|
17302
17302
|
"@babel/traverse": {
|
|
17303
|
-
"version": "7.17.
|
|
17304
|
-
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.
|
|
17305
|
-
"integrity": "sha512-
|
|
17303
|
+
"version": "7.17.3",
|
|
17304
|
+
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz",
|
|
17305
|
+
"integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==",
|
|
17306
17306
|
"dev": true,
|
|
17307
17307
|
"requires": {
|
|
17308
17308
|
"@babel/code-frame": "^7.16.7",
|
|
17309
|
-
"@babel/generator": "^7.17.
|
|
17309
|
+
"@babel/generator": "^7.17.3",
|
|
17310
17310
|
"@babel/helper-environment-visitor": "^7.16.7",
|
|
17311
17311
|
"@babel/helper-function-name": "^7.16.7",
|
|
17312
17312
|
"@babel/helper-hoist-variables": "^7.16.7",
|
|
17313
17313
|
"@babel/helper-split-export-declaration": "^7.16.7",
|
|
17314
|
-
"@babel/parser": "^7.17.
|
|
17314
|
+
"@babel/parser": "^7.17.3",
|
|
17315
17315
|
"@babel/types": "^7.17.0",
|
|
17316
17316
|
"debug": "^4.1.0",
|
|
17317
17317
|
"globals": "^11.1.0"
|
|
@@ -18973,15 +18973,15 @@
|
|
|
18973
18973
|
"dev": true
|
|
18974
18974
|
},
|
|
18975
18975
|
"browserslist": {
|
|
18976
|
-
"version": "4.19.
|
|
18977
|
-
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.
|
|
18978
|
-
"integrity": "sha512-
|
|
18976
|
+
"version": "4.19.3",
|
|
18977
|
+
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz",
|
|
18978
|
+
"integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==",
|
|
18979
18979
|
"dev": true,
|
|
18980
18980
|
"requires": {
|
|
18981
|
-
"caniuse-lite": "^1.0.
|
|
18982
|
-
"electron-to-chromium": "^1.4.
|
|
18981
|
+
"caniuse-lite": "^1.0.30001312",
|
|
18982
|
+
"electron-to-chromium": "^1.4.71",
|
|
18983
18983
|
"escalade": "^3.1.1",
|
|
18984
|
-
"node-releases": "^2.0.
|
|
18984
|
+
"node-releases": "^2.0.2",
|
|
18985
18985
|
"picocolors": "^1.0.0"
|
|
18986
18986
|
}
|
|
18987
18987
|
},
|
|
@@ -20353,14 +20353,14 @@
|
|
|
20353
20353
|
}
|
|
20354
20354
|
},
|
|
20355
20355
|
"degenerator": {
|
|
20356
|
-
"version": "3.0.
|
|
20357
|
-
"resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.
|
|
20358
|
-
"integrity": "sha512-
|
|
20356
|
+
"version": "3.0.2",
|
|
20357
|
+
"resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.2.tgz",
|
|
20358
|
+
"integrity": "sha512-c0mef3SNQo56t6urUU6tdQAs+ThoD0o9B9MJ8HEt7NQcGEILCRFqQb7ZbP9JAv+QF1Ky5plydhMR/IrqWDm+TQ==",
|
|
20359
20359
|
"requires": {
|
|
20360
20360
|
"ast-types": "^0.13.2",
|
|
20361
20361
|
"escodegen": "^1.8.1",
|
|
20362
20362
|
"esprima": "^4.0.0",
|
|
20363
|
-
"vm2": "^3.9.
|
|
20363
|
+
"vm2": "^3.9.8"
|
|
20364
20364
|
},
|
|
20365
20365
|
"dependencies": {
|
|
20366
20366
|
"escodegen": {
|
|
@@ -20550,9 +20550,9 @@
|
|
|
20550
20550
|
}
|
|
20551
20551
|
},
|
|
20552
20552
|
"electron-to-chromium": {
|
|
20553
|
-
"version": "1.4.
|
|
20554
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.
|
|
20555
|
-
"integrity": "sha512-
|
|
20553
|
+
"version": "1.4.71",
|
|
20554
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.71.tgz",
|
|
20555
|
+
"integrity": "sha512-Hk61vXXKRb2cd3znPE9F+2pLWdIOmP7GjiTj45y6L3W/lO+hSnUSUhq+6lEaERWBdZOHbk2s3YV5c9xVl3boVw==",
|
|
20556
20556
|
"dev": true
|
|
20557
20557
|
},
|
|
20558
20558
|
"emoji-regex": {
|
|
@@ -21332,9 +21332,9 @@
|
|
|
21332
21332
|
"integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw=="
|
|
21333
21333
|
},
|
|
21334
21334
|
"follow-redirects": {
|
|
21335
|
-
"version": "1.14.
|
|
21336
|
-
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.
|
|
21337
|
-
"integrity": "sha512-
|
|
21335
|
+
"version": "1.14.9",
|
|
21336
|
+
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz",
|
|
21337
|
+
"integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w=="
|
|
21338
21338
|
},
|
|
21339
21339
|
"for-in": {
|
|
21340
21340
|
"version": "1.0.2",
|
|
@@ -21785,9 +21785,9 @@
|
|
|
21785
21785
|
},
|
|
21786
21786
|
"dependencies": {
|
|
21787
21787
|
"minimatch": {
|
|
21788
|
-
"version": "3.0.
|
|
21789
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.
|
|
21790
|
-
"integrity": "sha512-
|
|
21788
|
+
"version": "3.0.8",
|
|
21789
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz",
|
|
21790
|
+
"integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==",
|
|
21791
21791
|
"requires": {
|
|
21792
21792
|
"brace-expansion": "^1.1.7"
|
|
21793
21793
|
}
|
|
@@ -23405,9 +23405,9 @@
|
|
|
23405
23405
|
}
|
|
23406
23406
|
},
|
|
23407
23407
|
"marky": {
|
|
23408
|
-
"version": "1.2.
|
|
23409
|
-
"resolved": "https://registry.npmjs.org/marky/-/marky-1.2.
|
|
23410
|
-
"integrity": "sha512-
|
|
23408
|
+
"version": "1.2.4",
|
|
23409
|
+
"resolved": "https://registry.npmjs.org/marky/-/marky-1.2.4.tgz",
|
|
23410
|
+
"integrity": "sha512-zd2/GiSn6U3/jeFVZ0J9CA1LzQ8RfIVvXkb/U0swFHF/zT+dVohTAWjmo2DcIuofmIIIROlwTbd+shSeXmxr0w=="
|
|
23411
23411
|
},
|
|
23412
23412
|
"matchdep": {
|
|
23413
23413
|
"version": "2.0.0",
|
|
@@ -23613,9 +23613,9 @@
|
|
|
23613
23613
|
}
|
|
23614
23614
|
},
|
|
23615
23615
|
"minimatch": {
|
|
23616
|
-
"version": "3.1.
|
|
23617
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.
|
|
23618
|
-
"integrity": "sha512-
|
|
23616
|
+
"version": "3.1.2",
|
|
23617
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
|
23618
|
+
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
|
23619
23619
|
"requires": {
|
|
23620
23620
|
"brace-expansion": "^1.1.7"
|
|
23621
23621
|
}
|
|
@@ -28001,9 +28001,9 @@
|
|
|
28001
28001
|
}
|
|
28002
28002
|
},
|
|
28003
28003
|
"socket.io-parser": {
|
|
28004
|
-
"version": "4.1.
|
|
28005
|
-
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.
|
|
28006
|
-
"integrity": "sha512-
|
|
28004
|
+
"version": "4.1.2",
|
|
28005
|
+
"resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.2.tgz",
|
|
28006
|
+
"integrity": "sha512-j3kk71QLJuyQ/hh5F/L2t1goqzdTL0gvDzuhTuNSwihfuFUrcSji0qFZmJJPtG6Rmug153eOPsUizeirf1IIog==",
|
|
28007
28007
|
"requires": {
|
|
28008
28008
|
"@socket.io/component-emitter": "~3.0.0",
|
|
28009
28009
|
"debug": "~4.3.1"
|
|
@@ -29284,9 +29284,9 @@
|
|
|
29284
29284
|
}
|
|
29285
29285
|
},
|
|
29286
29286
|
"vm2": {
|
|
29287
|
-
"version": "3.9.
|
|
29288
|
-
"resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.
|
|
29289
|
-
"integrity": "sha512
|
|
29287
|
+
"version": "3.9.8",
|
|
29288
|
+
"resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.8.tgz",
|
|
29289
|
+
"integrity": "sha512-/1PYg/BwdKzMPo8maOZ0heT7DLI0DAFTm7YQaz/Lim9oIaFZsJs3EdtalvXuBfZwczNwsYhju75NW4d6E+4q+w==",
|
|
29290
29290
|
"requires": {
|
|
29291
29291
|
"acorn": "^8.7.0",
|
|
29292
29292
|
"acorn-walk": "^8.2.0"
|
package/package.json
CHANGED
package/reports/debugReporter.js
CHANGED
|
@@ -25,11 +25,12 @@ DebugReporter.prototype.onTestStarted = function (test, workerId) {
|
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
DebugReporter.prototype.onTestFinished = function (test, workerId) {
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
const
|
|
32
|
-
const
|
|
28
|
+
const gridData = this.options.gridData || {};
|
|
29
|
+
const provider = gridData.provider;
|
|
30
|
+
const host = gridData.host;
|
|
31
|
+
const gridId = gridData.gridId;
|
|
32
|
+
const gridType = gridData.type;
|
|
33
|
+
const failedGetBrowserAttempts = gridData.failedGetBrowserAttempts;
|
|
33
34
|
logger.info('Test Finished', {
|
|
34
35
|
testId: test.testId,
|
|
35
36
|
testName: test.name,
|
package/runner.js
CHANGED
|
@@ -223,7 +223,7 @@ function runRunner(options, customExtensionLocalLocation) {
|
|
|
223
223
|
}
|
|
224
224
|
|
|
225
225
|
function showFreeGridRunWarningIfNeeded(options) {
|
|
226
|
-
if (featureAvailabilityService.shouldShowFreeGridRunWarning(options.gridData.type)) {
|
|
226
|
+
if (featureAvailabilityService.shouldShowFreeGridRunWarning(options.gridData && options.gridData.type)) {
|
|
227
227
|
const CYAN = '\x1b[36m';
|
|
228
228
|
const UNDERSCORE = '\x1b[4m';
|
|
229
229
|
const RESET = '\x1b[0m';
|
|
@@ -11,6 +11,7 @@ const testimServicesApi = require('../commons/testimServicesApi');
|
|
|
11
11
|
const testimCustomToken = require('../commons/testimCustomToken');
|
|
12
12
|
const TestRunStatus = require('../testRunStatus');
|
|
13
13
|
const analyticsService = require('../services/analyticsService');
|
|
14
|
+
const gridService = require('../services/gridService');
|
|
14
15
|
const branchService = require('../services/branchService');
|
|
15
16
|
const config = require('../commons/config');
|
|
16
17
|
const ParallelWorkerManager = require('./ParallelWorkerManager');
|
|
@@ -258,6 +259,9 @@ class TestPlanRunner {
|
|
|
258
259
|
delete tpOptions.gridId;
|
|
259
260
|
}
|
|
260
261
|
|
|
262
|
+
|
|
263
|
+
tpOptions.gridData = await gridService.getTestPlanGridData(options, testPlan);
|
|
264
|
+
|
|
261
265
|
const testPlanName = tpOptions.overrideExecutionName || testPlan.name;
|
|
262
266
|
return await Promise.all(testPlansData[id].map(async testPlanTests => {
|
|
263
267
|
const res = await this.runTestPlan(testPlanTests.beforeTests, testPlanTests.tests, testPlanTests.afterTests, tpOptions, testPlanName, id, branchToUse);
|
package/services/gridService.js
CHANGED
|
@@ -235,16 +235,8 @@ function getOptionGrid(options) {
|
|
|
235
235
|
return Promise.resolve({ host, port, path, protocol, type, user, key });
|
|
236
236
|
}
|
|
237
237
|
|
|
238
|
-
async function getTestPlanGridData(options) {
|
|
239
|
-
|
|
240
|
-
if (testPlanDatas.length === 0) {
|
|
241
|
-
throw new ArgError(`no test plan to run ${options.testPlan}`);
|
|
242
|
-
}
|
|
243
|
-
const testPlanGrids = testPlanDatas.map(testPlanData => options.allGrids.find(grid => grid._id === testPlanData.gridId));
|
|
244
|
-
if (testPlanGrids.includes(undefined)) {
|
|
245
|
-
throw new ArgError('failed to find one of the test plan defined grid');
|
|
246
|
-
}
|
|
247
|
-
return getSerializableObject(_.first(testPlanGrids));
|
|
238
|
+
async function getTestPlanGridData(options, testPlanData) {
|
|
239
|
+
return getGridDataByGridId(options.company.companyId, testPlanData.gridId, options.allGrids);
|
|
248
240
|
}
|
|
249
241
|
|
|
250
242
|
async function getGridData(options) {
|
|
@@ -253,10 +245,10 @@ async function getGridData(options) {
|
|
|
253
245
|
host, useLocalChromeDriver, useChromeLauncher, gridId, grid,
|
|
254
246
|
} = options;
|
|
255
247
|
if (useLocalChromeDriver || useChromeLauncher) {
|
|
256
|
-
return
|
|
248
|
+
return { mode: 'local' };
|
|
257
249
|
}
|
|
258
250
|
if (host) {
|
|
259
|
-
return
|
|
251
|
+
return getOptionGrid(options);
|
|
260
252
|
}
|
|
261
253
|
const companyId = company.companyId;
|
|
262
254
|
if (gridId) {
|
|
@@ -266,7 +258,8 @@ async function getGridData(options) {
|
|
|
266
258
|
return getGridDataByGridName(companyId, grid, allGrids);
|
|
267
259
|
}
|
|
268
260
|
if (hasTestPlanFlag(options)) {
|
|
269
|
-
|
|
261
|
+
logger.info('skipping getting grid, as it is set on test plan', { companyId });
|
|
262
|
+
return undefined;
|
|
270
263
|
}
|
|
271
264
|
|
|
272
265
|
throw new GridError('Missing host or grid configuration');
|
|
@@ -300,7 +293,7 @@ async function _getGridSlot(browser, executionId, testResultId, onGridSlot, opti
|
|
|
300
293
|
return gridInfo;
|
|
301
294
|
}
|
|
302
295
|
|
|
303
|
-
const handleHybridOrVendorIfNeeded = async (runnerOptions = { }, gridInfo = {}, testRunConfig = {}, lambdatestService, retryConfig = {}) => {
|
|
296
|
+
const handleHybridOrVendorIfNeeded = async (runnerOptions = { }, gridInfo = {}, testRunConfig = {}, lambdatestService = {}, retryConfig = {}) => {
|
|
304
297
|
const { company = {} } = runnerOptions;
|
|
305
298
|
const companyId = company.companyId;
|
|
306
299
|
const { gridId, type } = gridInfo;
|
|
@@ -337,6 +330,7 @@ module.exports = {
|
|
|
337
330
|
getGridSlot,
|
|
338
331
|
releaseGridSlot,
|
|
339
332
|
getGridData,
|
|
333
|
+
getTestPlanGridData,
|
|
340
334
|
addItemToGridCache,
|
|
341
335
|
keepAlive: {
|
|
342
336
|
start: startKeepAlive,
|
|
@@ -150,21 +150,14 @@ describe('gridService', () => {
|
|
|
150
150
|
.to.eventually.be.rejectedWith('Failed to find grid name: gridName');
|
|
151
151
|
});
|
|
152
152
|
|
|
153
|
-
it('should
|
|
154
|
-
const grid = await gridService.getGridData({ testPlan: 'testPlan', company: { companyId: 'companyId' }, allGrids: [{ _id: 'gridId', type: 'gridId' }] });
|
|
155
|
-
expect(grid).to.
|
|
156
|
-
sinon.assert.calledOnce(getTestPlanStub);
|
|
157
|
-
});
|
|
158
|
-
|
|
159
|
-
it('should handle grid not found error when passing test plan', async () => {
|
|
160
|
-
await expect(gridService.getGridData({ testPlan: 'testPlan', company: { companyId: 'companyId' }, allGrids: [] }))
|
|
161
|
-
.to.eventually.be.rejectedWith('failed to find one of the test plan defined grid');
|
|
153
|
+
it('should not assign a grid when using a test plan', async () => {
|
|
154
|
+
const grid = await gridService.getGridData({ testPlan: ['testPlan'], company: { companyId: 'companyId' }, allGrids: [{ _id: 'gridId', type: 'gridId' }] });
|
|
155
|
+
expect(grid).to.be.undefined;
|
|
162
156
|
});
|
|
163
157
|
|
|
164
|
-
it('should
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
.to.eventually.be.rejectedWith('no test plan to run testPlan');
|
|
158
|
+
it('should not assign a grid when using a test plan id', async () => {
|
|
159
|
+
const grid = await gridService.getGridData({ testPlanIds: ['testPlan'], company: { companyId: 'companyId' }, allGrids: [{ _id: 'gridId', type: 'gridId' }] });
|
|
160
|
+
expect(grid).to.be.undefined;
|
|
168
161
|
});
|
|
169
162
|
|
|
170
163
|
it('should throw when no grid selected', async () => {
|