cypress 3.3.2 → 3.6.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/index.js +1 -1
- package/lib/cli.js +15 -6
- package/lib/errors.js +59 -33
- package/lib/exec/open.js +4 -0
- package/lib/exec/run.js +4 -0
- package/lib/exec/spawn.js +54 -20
- package/lib/exec/versions.js +0 -1
- package/lib/exec/xvfb.js +1 -1
- package/lib/tasks/download.js +124 -15
- package/lib/tasks/install.js +10 -9
- package/lib/tasks/state.js +24 -2
- package/lib/tasks/unzip.js +0 -1
- package/lib/tasks/verify.js +40 -8
- package/lib/util.js +113 -14
- package/package.json +17 -16
- package/types/blob-util/package.json +51 -0
- package/types/bluebird/package.json +51 -0
- package/types/chai/package.json +81 -0
- package/types/chai-jquery/package.json +55 -0
- package/types/cy-chai.d.ts +5 -7
- package/types/cypress-npm-api.d.ts +50 -24
- package/types/index.d.ts +210 -11
- package/types/jquery/JQuery.d.ts +12942 -0
- package/types/jquery/JQueryStatic.d.ts +13521 -0
- package/types/jquery/LICENSE +21 -21
- package/types/jquery/README.md +4 -4
- package/types/jquery/index.d.ts +7 -8533
- package/types/jquery/legacy.d.ts +204 -0
- package/types/jquery/misc.d.ts +6661 -0
- package/types/jquery/package.json +140 -0
- package/types/lodash/package.json +85 -0
- package/types/minimatch/package.json +56 -0
- package/types/mocha/README.md +5 -5
- package/types/mocha/index.d.ts +2986 -241
- package/types/mocha/package.json +73 -0
- package/types/sinon/package.json +88 -0
- package/types/sinon-chai/package.json +63 -0
package/lib/util.js
CHANGED
@@ -9,6 +9,7 @@ function _taggedTemplateLiteral(strings, raw) { return Object.freeze(Object.defi
|
|
9
9
|
var _ = require('lodash');
|
10
10
|
var R = require('ramda');
|
11
11
|
var os = require('os');
|
12
|
+
var crypto = require('crypto');
|
12
13
|
var la = require('lazy-ass');
|
13
14
|
var is = require('check-more-types');
|
14
15
|
var tty = require('tty');
|
@@ -30,11 +31,44 @@ var _isInstalledGlobally = require('is-installed-globally');
|
|
30
31
|
var pkg = require(path.join(__dirname, '..', 'package.json'));
|
31
32
|
var logger = require('./logger');
|
32
33
|
var debug = require('debug')('cypress:cli');
|
34
|
+
var fs = require('./fs');
|
33
35
|
|
34
36
|
var issuesUrl = 'https://github.com/cypress-io/cypress/issues';
|
35
37
|
|
36
38
|
var getosAsync = Promise.promisify(getos);
|
37
39
|
|
40
|
+
/**
|
41
|
+
* Returns SHA512 of a file
|
42
|
+
*
|
43
|
+
* Implementation lifted from https://github.com/sindresorhus/hasha
|
44
|
+
* but without bringing that dependency (since hasha is Node v8+)
|
45
|
+
*/
|
46
|
+
var getFileChecksum = function getFileChecksum(filename) {
|
47
|
+
la(is.unemptyString(filename), 'expected filename', filename);
|
48
|
+
|
49
|
+
var hashStream = function hashStream() {
|
50
|
+
var s = crypto.createHash('sha512');
|
51
|
+
|
52
|
+
s.setEncoding('hex');
|
53
|
+
|
54
|
+
return s;
|
55
|
+
};
|
56
|
+
|
57
|
+
return new Promise(function (resolve, reject) {
|
58
|
+
var stream = fs.createReadStream(filename);
|
59
|
+
|
60
|
+
stream.on('error', reject).pipe(hashStream()).on('error', reject).on('finish', function () {
|
61
|
+
resolve(this.read());
|
62
|
+
});
|
63
|
+
});
|
64
|
+
};
|
65
|
+
|
66
|
+
var getFileSize = function getFileSize(filename) {
|
67
|
+
la(is.unemptyString(filename), 'expected filename', filename);
|
68
|
+
|
69
|
+
return fs.statAsync(filename).get('size');
|
70
|
+
};
|
71
|
+
|
38
72
|
var isBrokenGtkDisplayRe = /Gtk: cannot open display/;
|
39
73
|
|
40
74
|
var stringify = function stringify(val) {
|
@@ -75,6 +109,7 @@ var logBrokenGtkDisplayWarning = function logBrokenGtkDisplayWarning() {
|
|
75
109
|
|
76
110
|
// if we get this error, we are on Linux and DISPLAY is set
|
77
111
|
logger.warn(stripIndent(_templateObject, logSymbols.warning, process.env.DISPLAY));
|
112
|
+
|
78
113
|
logger.warn();
|
79
114
|
};
|
80
115
|
|
@@ -85,6 +120,25 @@ function stdoutLineMatches(expectedLine, stdout) {
|
|
85
120
|
return lines.some(lineMatches);
|
86
121
|
}
|
87
122
|
|
123
|
+
/**
|
124
|
+
* Confirms if given value is a valid CYPRESS_ENV value. Undefined values
|
125
|
+
* are valid, because the system can set the default one.
|
126
|
+
*
|
127
|
+
* @param {string} value
|
128
|
+
* @example util.isValidCypressEnvValue(process.env.CYPRESS_ENV)
|
129
|
+
*/
|
130
|
+
function isValidCypressEnvValue(value) {
|
131
|
+
if (_.isUndefined(value)) {
|
132
|
+
// will get default value
|
133
|
+
return true;
|
134
|
+
}
|
135
|
+
|
136
|
+
// names of config environments, see "packages/server/config/app.yml"
|
137
|
+
var names = ['development', 'test', 'staging', 'production'];
|
138
|
+
|
139
|
+
return _.includes(names, value);
|
140
|
+
}
|
141
|
+
|
88
142
|
/**
|
89
143
|
* Prints NODE_OPTIONS using debug() module, but only
|
90
144
|
* if DEBUG=cypress... is set
|
@@ -103,9 +157,30 @@ function printNodeOptions() {
|
|
103
157
|
}
|
104
158
|
}
|
105
159
|
|
160
|
+
/**
|
161
|
+
* Removes double quote characters
|
162
|
+
* from the start and end of the given string IF they are both present
|
163
|
+
*
|
164
|
+
* @example
|
165
|
+
```
|
166
|
+
dequote('"foo"')
|
167
|
+
// returns string 'foo'
|
168
|
+
dequote('foo')
|
169
|
+
// returns string 'foo'
|
170
|
+
```
|
171
|
+
*/
|
172
|
+
var dequote = function dequote(str) {
|
173
|
+
la(is.string(str), 'expected a string to remove double quotes', str);
|
174
|
+
if (str.length > 1 && str[0] === '"' && str[str.length - 1] === '"') {
|
175
|
+
return str.substr(1, str.length - 2);
|
176
|
+
}
|
177
|
+
|
178
|
+
return str;
|
179
|
+
};
|
180
|
+
|
106
181
|
var util = {
|
107
182
|
normalizeModuleOptions: normalizeModuleOptions,
|
108
|
-
|
183
|
+
isValidCypressEnvValue: isValidCypressEnvValue,
|
109
184
|
printNodeOptions: printNodeOptions,
|
110
185
|
|
111
186
|
isCi: function isCi() {
|
@@ -167,6 +242,10 @@ var util = {
|
|
167
242
|
|
168
243
|
process.exit(1);
|
169
244
|
},
|
245
|
+
|
246
|
+
|
247
|
+
dequote: dequote,
|
248
|
+
|
170
249
|
titleize: function titleize() {
|
171
250
|
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
|
172
251
|
args[_key] = arguments[_key];
|
@@ -184,7 +263,7 @@ var util = {
|
|
184
263
|
calculateEta: function calculateEta(percent, elapsed) {
|
185
264
|
// returns the number of seconds remaining
|
186
265
|
|
187
|
-
// if we're at 100 already just return 0
|
266
|
+
// if we're at 100% already just return 0
|
188
267
|
if (percent === 100) {
|
189
268
|
return 0;
|
190
269
|
}
|
@@ -194,6 +273,12 @@ var util = {
|
|
194
273
|
// subtracting what's already elapsed
|
195
274
|
return elapsed * (1 / (percent / 100)) - elapsed;
|
196
275
|
},
|
276
|
+
convertPercentToPercentage: function convertPercentToPercentage(num) {
|
277
|
+
// convert a percent with values between 0 and 1
|
278
|
+
// with decimals, so that it is between 0 and 100
|
279
|
+
// and has no decimal places
|
280
|
+
return Math.round(_.isFinite(num) ? num * 100 : 0);
|
281
|
+
},
|
197
282
|
secsRemaining: function secsRemaining(eta) {
|
198
283
|
// calculate the seconds reminaing with no decimal places
|
199
284
|
return (_.isFinite(eta) ? eta / 1000 : 0).toFixed(0);
|
@@ -244,30 +329,39 @@ var util = {
|
|
244
329
|
|
245
330
|
return path.join(process.cwd(), '..', '..', filename);
|
246
331
|
},
|
247
|
-
getEnv: function getEnv(varName) {
|
332
|
+
getEnv: function getEnv(varName, trim) {
|
333
|
+
la(is.unemptyString(varName), 'expected environment variable name, not', varName);
|
334
|
+
|
248
335
|
var envVar = process.env[varName];
|
249
336
|
var configVar = process.env['npm_config_' + varName];
|
250
337
|
var packageConfigVar = process.env['npm_package_config_' + varName];
|
251
338
|
|
339
|
+
var result = void 0;
|
340
|
+
|
252
341
|
if (envVar) {
|
253
342
|
debug('Using ' + varName + ' from environment variable');
|
254
343
|
|
255
|
-
|
256
|
-
}
|
257
|
-
|
258
|
-
if (configVar) {
|
344
|
+
result = envVar;
|
345
|
+
} else if (configVar) {
|
259
346
|
debug('Using ' + varName + ' from npm config');
|
260
347
|
|
261
|
-
|
262
|
-
}
|
263
|
-
|
264
|
-
if (packageConfigVar) {
|
348
|
+
result = configVar;
|
349
|
+
} else if (packageConfigVar) {
|
265
350
|
debug('Using ' + varName + ' from package.json config');
|
266
351
|
|
267
|
-
|
352
|
+
result = packageConfigVar;
|
268
353
|
}
|
269
354
|
|
270
|
-
|
355
|
+
// environment variables are often set double quotes to escape characters
|
356
|
+
// and on Windows it can lead to weird things: for example
|
357
|
+
// set FOO="C:\foo.txt" && node -e "console.log('>>>%s<<<', process.env.FOO)"
|
358
|
+
// will print
|
359
|
+
// >>>"C:\foo.txt" <<<
|
360
|
+
// see https://github.com/cypress-io/cypress/issues/4506#issuecomment-506029942
|
361
|
+
// so for sanity sake we should first trim whitespace characters and remove
|
362
|
+
// double quotes around environment strings if the caller is expected to
|
363
|
+
// use this environment string as a file path
|
364
|
+
return trim ? dequote(_.trim(result)) : result;
|
271
365
|
},
|
272
366
|
getCacheDir: function getCacheDir() {
|
273
367
|
return cachedir('Cypress');
|
@@ -294,7 +388,12 @@ var util = {
|
|
294
388
|
la(_.isInteger(number), 'github issue should be an integer', number);
|
295
389
|
|
296
390
|
return issuesUrl + '/' + number;
|
297
|
-
}
|
391
|
+
},
|
392
|
+
|
393
|
+
|
394
|
+
getFileChecksum: getFileChecksum,
|
395
|
+
|
396
|
+
getFileSize: getFileSize
|
298
397
|
};
|
299
398
|
|
300
399
|
module.exports = util;
|
package/package.json
CHANGED
@@ -1,21 +1,15 @@
|
|
1
1
|
{
|
2
2
|
"name": "cypress",
|
3
|
-
"version": "3.
|
3
|
+
"version": "3.6.0",
|
4
4
|
"main": "index.js",
|
5
|
-
"bin": {
|
6
|
-
"cypress": "bin/cypress"
|
7
|
-
},
|
8
|
-
"engines": {
|
9
|
-
"node": ">=4.0.0"
|
10
|
-
},
|
11
5
|
"scripts": {
|
12
6
|
"postinstall": "node index.js --exec install",
|
13
7
|
"size": "t=\"$(npm pack .)\"; wc -c \"${t}\"; tar tvf \"${t}\"; rm \"${t}\";"
|
14
8
|
},
|
15
|
-
"types": "types",
|
16
9
|
"dependencies": {
|
17
10
|
"@cypress/listr-verbose-renderer": "0.4.1",
|
18
11
|
"@cypress/xvfb": "1.2.4",
|
12
|
+
"@types/sizzle": "2.3.2",
|
19
13
|
"arch": "2.1.1",
|
20
14
|
"bluebird": "3.5.0",
|
21
15
|
"cachedir": "1.3.0",
|
@@ -29,20 +23,20 @@
|
|
29
23
|
"extract-zip": "1.6.7",
|
30
24
|
"fs-extra": "5.0.0",
|
31
25
|
"getos": "3.1.1",
|
32
|
-
"glob": "7.1.3",
|
33
26
|
"is-ci": "1.2.1",
|
34
27
|
"is-installed-globally": "0.1.0",
|
35
28
|
"lazy-ass": "1.6.0",
|
36
29
|
"listr": "0.12.0",
|
37
|
-
"lodash": "4.17.
|
30
|
+
"lodash": "4.17.15",
|
38
31
|
"log-symbols": "2.2.0",
|
39
32
|
"minimist": "1.2.0",
|
40
33
|
"moment": "2.24.0",
|
41
34
|
"ramda": "0.24.1",
|
42
35
|
"request": "2.88.0",
|
43
|
-
"request-progress": "0.
|
36
|
+
"request-progress": "3.0.0",
|
44
37
|
"supports-color": "5.5.0",
|
45
38
|
"tmp": "0.1.0",
|
39
|
+
"untildify": "3.0.3",
|
46
40
|
"url": "0.11.0",
|
47
41
|
"yauzl": "2.10.0"
|
48
42
|
},
|
@@ -52,6 +46,13 @@
|
|
52
46
|
"index.js",
|
53
47
|
"types/**/*.d.ts"
|
54
48
|
],
|
49
|
+
"bin": {
|
50
|
+
"cypress": "bin/cypress"
|
51
|
+
},
|
52
|
+
"engines": {
|
53
|
+
"node": ">=4.0.0"
|
54
|
+
},
|
55
|
+
"types": "types",
|
55
56
|
"description": "Cypress.io end to end testing tool",
|
56
57
|
"author": "Brian Mann",
|
57
58
|
"homepage": "https://github.com/cypress-io/cypress",
|
@@ -64,18 +65,18 @@
|
|
64
65
|
"url": "https://github.com/cypress-io/cypress.git"
|
65
66
|
},
|
66
67
|
"keywords": [
|
68
|
+
"automation",
|
67
69
|
"browser",
|
68
70
|
"cypress",
|
69
71
|
"cypress.io",
|
70
|
-
"automation",
|
71
|
-
"end-to-end",
|
72
72
|
"e2e",
|
73
|
+
"end-to-end",
|
73
74
|
"integration",
|
74
75
|
"mocks",
|
75
|
-
"test",
|
76
|
-
"testing",
|
77
76
|
"runner",
|
78
77
|
"spies",
|
79
|
-
"stubs"
|
78
|
+
"stubs",
|
79
|
+
"test",
|
80
|
+
"testing"
|
80
81
|
]
|
81
82
|
}
|
@@ -0,0 +1,51 @@
|
|
1
|
+
{
|
2
|
+
"_from": "@types/blob-util@1.3.3",
|
3
|
+
"_id": "@types/blob-util@1.3.3",
|
4
|
+
"_inBundle": false,
|
5
|
+
"_integrity": "sha512-4ahcL/QDnpjWA2Qs16ZMQif7HjGP2cw3AGjHabybjw7Vm1EKu+cfQN1D78BaZbS1WJNa1opSMF5HNMztx7lR0w==",
|
6
|
+
"_location": "/@types/blob-util",
|
7
|
+
"_phantomChildren": {},
|
8
|
+
"_requested": {
|
9
|
+
"type": "version",
|
10
|
+
"registry": true,
|
11
|
+
"raw": "@types/blob-util@1.3.3",
|
12
|
+
"name": "@types/blob-util",
|
13
|
+
"escapedName": "@types%2fblob-util",
|
14
|
+
"scope": "@types",
|
15
|
+
"rawSpec": "1.3.3",
|
16
|
+
"saveSpec": null,
|
17
|
+
"fetchSpec": "1.3.3"
|
18
|
+
},
|
19
|
+
"_requiredBy": [
|
20
|
+
"#DEV:/"
|
21
|
+
],
|
22
|
+
"_resolved": "https://registry.npmjs.org/@types/blob-util/-/blob-util-1.3.3.tgz",
|
23
|
+
"_shasum": "adba644ae34f88e1dd9a5864c66ad651caaf628a",
|
24
|
+
"_spec": "@types/blob-util@1.3.3",
|
25
|
+
"_where": "/root/cypress/cli",
|
26
|
+
"bugs": {
|
27
|
+
"url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
|
28
|
+
},
|
29
|
+
"bundleDependencies": false,
|
30
|
+
"contributors": [
|
31
|
+
{
|
32
|
+
"name": "Max Battcher",
|
33
|
+
"url": "https://github.com/WorldMaker"
|
34
|
+
}
|
35
|
+
],
|
36
|
+
"dependencies": {},
|
37
|
+
"deprecated": false,
|
38
|
+
"description": "TypeScript definitions for blob-util",
|
39
|
+
"homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped#readme",
|
40
|
+
"license": "MIT",
|
41
|
+
"main": "",
|
42
|
+
"name": "@types/blob-util",
|
43
|
+
"repository": {
|
44
|
+
"type": "git",
|
45
|
+
"url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git"
|
46
|
+
},
|
47
|
+
"scripts": {},
|
48
|
+
"typeScriptVersion": "2.1",
|
49
|
+
"typesPublisherContentHash": "251d66da417b64481e7f82fee1849478af0caa6fce0b1feee2146884d2dc9c98",
|
50
|
+
"version": "1.3.3"
|
51
|
+
}
|
@@ -0,0 +1,51 @@
|
|
1
|
+
{
|
2
|
+
"_from": "@types/bluebird@3.5.18",
|
3
|
+
"_id": "@types/bluebird@3.5.18",
|
4
|
+
"_inBundle": false,
|
5
|
+
"_integrity": "sha512-OTPWHmsyW18BhrnG5x8F7PzeZ2nFxmHGb42bZn79P9hl+GI5cMzyPgQTwNjbem0lJhoru/8vtjAFCUOu3+gE2w==",
|
6
|
+
"_location": "/@types/bluebird",
|
7
|
+
"_phantomChildren": {},
|
8
|
+
"_requested": {
|
9
|
+
"type": "version",
|
10
|
+
"registry": true,
|
11
|
+
"raw": "@types/bluebird@3.5.18",
|
12
|
+
"name": "@types/bluebird",
|
13
|
+
"escapedName": "@types%2fbluebird",
|
14
|
+
"scope": "@types",
|
15
|
+
"rawSpec": "3.5.18",
|
16
|
+
"saveSpec": null,
|
17
|
+
"fetchSpec": "3.5.18"
|
18
|
+
},
|
19
|
+
"_requiredBy": [
|
20
|
+
"#DEV:/"
|
21
|
+
],
|
22
|
+
"_resolved": "https://registry.npmjs.org/@types/bluebird/-/bluebird-3.5.18.tgz",
|
23
|
+
"_shasum": "6a60435d4663e290f3709898a4f75014f279c4d6",
|
24
|
+
"_spec": "@types/bluebird@3.5.18",
|
25
|
+
"_where": "/root/cypress/cli",
|
26
|
+
"bugs": {
|
27
|
+
"url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
|
28
|
+
},
|
29
|
+
"bundleDependencies": false,
|
30
|
+
"contributors": [
|
31
|
+
{
|
32
|
+
"name": "Leonard Hecker",
|
33
|
+
"url": "https://github.com/lhecker"
|
34
|
+
}
|
35
|
+
],
|
36
|
+
"dependencies": {},
|
37
|
+
"deprecated": false,
|
38
|
+
"description": "TypeScript definitions for bluebird",
|
39
|
+
"homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped#readme",
|
40
|
+
"license": "MIT",
|
41
|
+
"main": "",
|
42
|
+
"name": "@types/bluebird",
|
43
|
+
"repository": {
|
44
|
+
"type": "git",
|
45
|
+
"url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git"
|
46
|
+
},
|
47
|
+
"scripts": {},
|
48
|
+
"typeScriptVersion": "2.3",
|
49
|
+
"typesPublisherContentHash": "c9b100367d31f8bd36031e55737d6ffde1a9b85dac3df3693f8f684f914c94cb",
|
50
|
+
"version": "3.5.18"
|
51
|
+
}
|
@@ -0,0 +1,81 @@
|
|
1
|
+
{
|
2
|
+
"_from": "@types/chai@4.0.8",
|
3
|
+
"_id": "@types/chai@4.0.8",
|
4
|
+
"_inBundle": false,
|
5
|
+
"_integrity": "sha512-m812CONwdZn/dMzkIJEY0yAs4apyTkTORgfB2UsMOxgkUbC205AHnm4T8I0I5gPg9MHrFc1dJ35iS75c0CJkjg==",
|
6
|
+
"_location": "/@types/chai",
|
7
|
+
"_phantomChildren": {},
|
8
|
+
"_requested": {
|
9
|
+
"type": "version",
|
10
|
+
"registry": true,
|
11
|
+
"raw": "@types/chai@4.0.8",
|
12
|
+
"name": "@types/chai",
|
13
|
+
"escapedName": "@types%2fchai",
|
14
|
+
"scope": "@types",
|
15
|
+
"rawSpec": "4.0.8",
|
16
|
+
"saveSpec": null,
|
17
|
+
"fetchSpec": "4.0.8"
|
18
|
+
},
|
19
|
+
"_requiredBy": [
|
20
|
+
"#DEV:/",
|
21
|
+
"/@types/chai-jquery",
|
22
|
+
"/@types/sinon-chai"
|
23
|
+
],
|
24
|
+
"_resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.0.8.tgz",
|
25
|
+
"_shasum": "d27600e9ba2f371e08695d90a0fe0408d89c7be7",
|
26
|
+
"_spec": "@types/chai@4.0.8",
|
27
|
+
"_where": "/root/cypress/cli",
|
28
|
+
"bugs": {
|
29
|
+
"url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
|
30
|
+
},
|
31
|
+
"bundleDependencies": false,
|
32
|
+
"contributors": [
|
33
|
+
{
|
34
|
+
"name": "Jed Mao",
|
35
|
+
"url": "https://github.com/jedmao"
|
36
|
+
},
|
37
|
+
{
|
38
|
+
"name": "Bart van der Schoor",
|
39
|
+
"url": "https://github.com/Bartvds"
|
40
|
+
},
|
41
|
+
{
|
42
|
+
"name": "Andrew Brown",
|
43
|
+
"url": "https://github.com/AGBrown"
|
44
|
+
},
|
45
|
+
{
|
46
|
+
"name": "Olivier Chevet",
|
47
|
+
"url": "https://github.com/olivr70"
|
48
|
+
},
|
49
|
+
{
|
50
|
+
"name": "Matt Wistrand",
|
51
|
+
"url": "https://github.com/mwistrand"
|
52
|
+
},
|
53
|
+
{
|
54
|
+
"name": "Josh Goldberg",
|
55
|
+
"url": "https://github.com/joshuakgoldberg"
|
56
|
+
},
|
57
|
+
{
|
58
|
+
"name": "Shaun Luttin",
|
59
|
+
"url": "https://github.com/shaunluttin"
|
60
|
+
},
|
61
|
+
{
|
62
|
+
"name": "Gintautas Miselis",
|
63
|
+
"url": "https://github.com/Naktibalda"
|
64
|
+
}
|
65
|
+
],
|
66
|
+
"dependencies": {},
|
67
|
+
"deprecated": false,
|
68
|
+
"description": "TypeScript definitions for chai",
|
69
|
+
"homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped#readme",
|
70
|
+
"license": "MIT",
|
71
|
+
"main": "",
|
72
|
+
"name": "@types/chai",
|
73
|
+
"repository": {
|
74
|
+
"type": "git",
|
75
|
+
"url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git"
|
76
|
+
},
|
77
|
+
"scripts": {},
|
78
|
+
"typeScriptVersion": "2.0",
|
79
|
+
"typesPublisherContentHash": "1c89ea9e229c46de0cd9fc9a48b4ce18c27a3bab9d443d01bec054b1126ede4a",
|
80
|
+
"version": "4.0.8"
|
81
|
+
}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
{
|
2
|
+
"_from": "@types/chai-jquery@1.1.38",
|
3
|
+
"_id": "@types/chai-jquery@1.1.38",
|
4
|
+
"_inBundle": false,
|
5
|
+
"_integrity": "sha512-j/b++tOoQtkqXdkUWnojd+dM+YxkMiWJ193mToN/vv+rkBLv3MSSNwyDxFSXDwdi82Y+J2Js4fvdVkv/JiVeow==",
|
6
|
+
"_location": "/@types/chai-jquery",
|
7
|
+
"_phantomChildren": {},
|
8
|
+
"_requested": {
|
9
|
+
"type": "version",
|
10
|
+
"registry": true,
|
11
|
+
"raw": "@types/chai-jquery@1.1.38",
|
12
|
+
"name": "@types/chai-jquery",
|
13
|
+
"escapedName": "@types%2fchai-jquery",
|
14
|
+
"scope": "@types",
|
15
|
+
"rawSpec": "1.1.38",
|
16
|
+
"saveSpec": null,
|
17
|
+
"fetchSpec": "1.1.38"
|
18
|
+
},
|
19
|
+
"_requiredBy": [
|
20
|
+
"#DEV:/"
|
21
|
+
],
|
22
|
+
"_resolved": "https://registry.npmjs.org/@types/chai-jquery/-/chai-jquery-1.1.38.tgz",
|
23
|
+
"_shasum": "bbab052200871e1b26b9a239caa63b2a2eaa00bc",
|
24
|
+
"_spec": "@types/chai-jquery@1.1.38",
|
25
|
+
"_where": "/root/cypress/cli",
|
26
|
+
"bugs": {
|
27
|
+
"url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
|
28
|
+
},
|
29
|
+
"bundleDependencies": false,
|
30
|
+
"contributors": [
|
31
|
+
{
|
32
|
+
"name": "Kazi Manzur Rashid",
|
33
|
+
"url": "https://github.com/kazimanzurrashid"
|
34
|
+
}
|
35
|
+
],
|
36
|
+
"dependencies": {
|
37
|
+
"@types/chai": "*",
|
38
|
+
"@types/jquery": "*"
|
39
|
+
},
|
40
|
+
"deprecated": false,
|
41
|
+
"description": "TypeScript definitions for chai-jquery",
|
42
|
+
"homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped#readme",
|
43
|
+
"license": "MIT",
|
44
|
+
"main": "",
|
45
|
+
"name": "@types/chai-jquery",
|
46
|
+
"repository": {
|
47
|
+
"type": "git",
|
48
|
+
"url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git"
|
49
|
+
},
|
50
|
+
"scripts": {},
|
51
|
+
"typeScriptVersion": "2.3",
|
52
|
+
"types": "index",
|
53
|
+
"typesPublisherContentHash": "e12e44b47bd00c6f4a82ba74968fe19edad29fdcd0ffc07a23da854653181f17",
|
54
|
+
"version": "1.1.38"
|
55
|
+
}
|
package/types/cy-chai.d.ts
CHANGED
@@ -1,12 +1,10 @@
|
|
1
1
|
// Shim definition to export a namespace. Cypress is actually a global module
|
2
2
|
// so import/export isn't allowed there. We import here and define a global module
|
3
3
|
/// <reference path="./chai/index.d.ts" />
|
4
|
-
|
5
|
-
export = Chai
|
6
|
-
export as namespace Chai
|
7
|
-
|
8
4
|
declare namespace Chai {
|
9
|
-
|
10
|
-
|
11
|
-
|
5
|
+
interface Include {
|
6
|
+
html(html: string): Assertion
|
7
|
+
text(text: string): Assertion
|
8
|
+
value(text: string): Assertion
|
9
|
+
}
|
12
10
|
}
|
@@ -43,9 +43,9 @@ declare module 'cypress' {
|
|
43
43
|
*/
|
44
44
|
reporter: string,
|
45
45
|
/**
|
46
|
-
* A String glob pattern of the test files to load.
|
46
|
+
* A String or Array of string glob pattern of the test files to load.
|
47
47
|
*/
|
48
|
-
testFiles: string
|
48
|
+
testFiles: string | string[]
|
49
49
|
|
50
50
|
//
|
51
51
|
// timeouts
|
@@ -224,7 +224,7 @@ declare module 'cypress' {
|
|
224
224
|
})
|
225
225
|
```
|
226
226
|
*/
|
227
|
-
interface CypressRunOptions {
|
227
|
+
interface CypressRunOptions extends CypressCommonOptions {
|
228
228
|
/**
|
229
229
|
* Specify different browser to run tests in, either by name or by filesystem path
|
230
230
|
*/
|
@@ -233,14 +233,6 @@ declare module 'cypress' {
|
|
233
233
|
* Specify a unique identifier for a run to enable grouping or parallelization
|
234
234
|
*/
|
235
235
|
ciBuildId: string
|
236
|
-
/**
|
237
|
-
* Specify configuration
|
238
|
-
*/
|
239
|
-
config: Partial<CypressConfiguration>
|
240
|
-
/**
|
241
|
-
* Specify environment variables
|
242
|
-
*/
|
243
|
-
env: object
|
244
236
|
/**
|
245
237
|
* Group recorded tests together under a single run name
|
246
238
|
*/
|
@@ -265,10 +257,6 @@ declare module 'cypress' {
|
|
265
257
|
* Override default port
|
266
258
|
*/
|
267
259
|
port: number
|
268
|
-
/**
|
269
|
-
* Path to a specific project
|
270
|
-
*/
|
271
|
-
project: string
|
272
260
|
/**
|
273
261
|
* Whether to record the test run
|
274
262
|
*/
|
@@ -302,23 +290,15 @@ declare module 'cypress' {
|
|
302
290
|
})
|
303
291
|
```
|
304
292
|
*/
|
305
|
-
interface CypressOpenOptions {
|
293
|
+
interface CypressOpenOptions extends CypressCommonOptions {
|
306
294
|
/**
|
307
295
|
* Specify a filesystem path to a custom browser
|
308
296
|
*/
|
309
297
|
browser: string
|
310
|
-
/**
|
311
|
-
* Specify configuration
|
312
|
-
*/
|
313
|
-
config: Partial<CypressConfiguration>
|
314
298
|
/**
|
315
299
|
* Open Cypress in detached mode
|
316
300
|
*/
|
317
301
|
detached: boolean
|
318
|
-
/**
|
319
|
-
* Specify environment variables
|
320
|
-
*/
|
321
|
-
env: object
|
322
302
|
/**
|
323
303
|
* Run in global mode
|
324
304
|
*/
|
@@ -327,6 +307,28 @@ declare module 'cypress' {
|
|
327
307
|
* Override default port
|
328
308
|
*/
|
329
309
|
port: number
|
310
|
+
}
|
311
|
+
|
312
|
+
/**
|
313
|
+
* Options available for `cypress.open` and `cypress.run`
|
314
|
+
*/
|
315
|
+
interface CypressCommonOptions {
|
316
|
+
/**
|
317
|
+
* Specify configuration
|
318
|
+
*/
|
319
|
+
config: Partial<CypressConfiguration>
|
320
|
+
/**
|
321
|
+
* Path to the config file to be used.
|
322
|
+
*
|
323
|
+
* If `false` is passed, no config file will be used.
|
324
|
+
*
|
325
|
+
* @default "cypress.json"
|
326
|
+
*/
|
327
|
+
configFile: string | false
|
328
|
+
/**
|
329
|
+
* Specify environment variables
|
330
|
+
*/
|
331
|
+
env: object
|
330
332
|
/**
|
331
333
|
* Path to a specific project
|
332
334
|
*/
|
@@ -443,6 +445,7 @@ declare module 'cypress' {
|
|
443
445
|
|
444
446
|
/**
|
445
447
|
* Results returned by the test run.
|
448
|
+
* @see https://on.cypress.io/module-api
|
446
449
|
*/
|
447
450
|
interface CypressRunResult {
|
448
451
|
startedTestsAt: dateTimeISO
|
@@ -463,6 +466,29 @@ declare module 'cypress' {
|
|
463
466
|
cypressVersion: string
|
464
467
|
// TODO add resolved object to the configuration
|
465
468
|
config: CypressConfiguration
|
469
|
+
/**
|
470
|
+
* If Cypress fails to run at all (for example, if there are no spec files to run),
|
471
|
+
* then it will set failures to 1 and will have actual error message in the
|
472
|
+
* property "message". Check this property before checking other properties.
|
473
|
+
*
|
474
|
+
* @type {number}
|
475
|
+
* @example
|
476
|
+
```
|
477
|
+
const result = await cypress.run()
|
478
|
+
if (result.failures) {
|
479
|
+
console.error(result.message)
|
480
|
+
process.exit(result.failures)
|
481
|
+
}
|
482
|
+
```
|
483
|
+
*/
|
484
|
+
failures?: number
|
485
|
+
/**
|
486
|
+
* If returned result has "failures" set, then this property gives
|
487
|
+
* the error message.
|
488
|
+
*
|
489
|
+
* @type {string}
|
490
|
+
*/
|
491
|
+
message?: string
|
466
492
|
}
|
467
493
|
|
468
494
|
/**
|