-
Notifications
You must be signed in to change notification settings - Fork 1
/
mocha.js
43 lines (36 loc) · 886 Bytes
/
mocha.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/* global it */
const {
eyes: {
DEFAULT_TIMEOUT,
openEyes,
checkImage,
setMatchTimeout,
abortIfNotClosed
},
useBaselineName,
useFixedViewPort
} = require('./eyes');
const eyes = {
checkImage,
setMatchTimeout,
abortIfNotClosed
};
eyes.it = function (name, fn, options) {
return it(name, run(name, fn, options));
};
eyes.it.only = function (name, fn, options) {
// eslint-disable-next-line mocha/no-exclusive-tests
return it.only(name, run(name, fn, options));
};
eyes.it.skip = function (name, fn) {
return it.skip(name, fn);
};
function run(name, fn, options) {
return async function () {
this.timeout(DEFAULT_TIMEOUT);
return await openEyes.call(this, fn, this.test.fullTitle(), options);
};
}
module.exports.eyes = eyes;
module.exports.useBaselineName = useBaselineName;
module.exports.useFixedViewPort = useFixedViewPort;