Skip to content

Commit a78c291

Browse files
committed
Update: Switch to mocha + expect for testing
1 parent e3651f5 commit a78c291

File tree

9 files changed

+68
-89
lines changed

9 files changed

+68
-89
lines changed

.travis.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
sudo: false
2-
32
language: node_js
4-
53
node_js:
6-
- 'stable'
4+
- '6'
5+
- '5'
6+
- '4'
77
- '0.12'
88
- '0.10'
9+
after_script:
10+
- npm run coveralls

package.json

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,11 @@
2020
"LICENSE"
2121
],
2222
"scripts": {
23+
"lint": "eslint . && jscs index.js lib/ test/",
2324
"pretest": "npm run lint",
24-
"test": "lab -cv",
25-
"lint": "eslint . && jscs *.js lib/ test/"
25+
"test": "mocha --async-only",
26+
"cover": "istanbul cover _mocha --report lcovonly",
27+
"coveralls": "npm run cover && istanbul-coveralls"
2628
},
2729
"dependencies": {
2830
"async-done": "^1.1.1",
@@ -36,12 +38,14 @@
3638
"now-and-later": "0.0.6"
3739
},
3840
"devDependencies": {
39-
"code": "^1.5.0",
4041
"eslint": "^1.7.3",
4142
"eslint-config-gulp": "^2.0.0",
43+
"expect": "^1.19.0",
44+
"istanbul": "^0.4.3",
45+
"istanbul-coveralls": "^1.0.3",
4246
"jscs": "^2.3.5",
4347
"jscs-preset-gulp": "^1.0.0",
44-
"lab": "^6.2.0"
48+
"mocha": "^2.4.5"
4549
},
4650
"keywords": [
4751
"compose",

test/getExtensions.js

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,20 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var getExtensions = require('../lib/helpers').getExtensions;
96

107
describe('getExtensions', function() {
118

129
it('should return the argument if it is an object', function(done) {
1310
var obj = {};
14-
expect(getExtensions(obj)).to.equal(obj);
11+
expect(getExtensions(obj)).toEqual(obj);
1512
done();
1613
});
1714

1815
it('should return undefined if argument is not an object', function(done) {
1916
var fn = function() {};
20-
expect(getExtensions(fn)).to.equal(undefined);
17+
expect(getExtensions(fn)).toEqual(undefined);
2118
done();
2219
});
2320
});

test/onSettled.js

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var onSettled = require('../lib/helpers').onSettled;
96

@@ -16,16 +13,16 @@ describe('onSettled', function() {
1613

1714
it('should group all errors', function(done) {
1815
onSettled(function(errs, results) {
19-
expect(errs).to.have.length(2);
20-
expect(results).to.equal(null);
16+
expect(errs.length).toEqual(2);
17+
expect(results).toEqual(null);
2118
done();
2219
})(null, errors);
2320
});
2421

2522
it('should error early if called with an error', function(done) {
2623
onSettled(function(err, results) {
27-
expect(err).to.be.an.instanceof(Error);
28-
expect(results).to.equal(null);
24+
expect(err).toBeAn(Error);
25+
expect(results).toEqual(null);
2926
done();
3027
})(new Error('Should not happen'));
3128
});

test/parallel.js

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var bach = require('../');
96

@@ -29,22 +26,22 @@ describe('parallel', function() {
2926

3027
it('should execute functions in parallel, passing results', function(done) {
3128
bach.parallel(fn1, fn2, fn3)(function(error, results) {
32-
expect(error).to.equal(null);
33-
expect(results).to.deep.equal([1, 2, 3]);
29+
expect(error).toEqual(null);
30+
expect(results).toEqual([1, 2, 3]);
3431
done();
3532
});
3633
});
3734

3835
it('should execute functions in parallel, passing error', function(done) {
3936
function slowFn(done) {
4037
setTimeout(function() {
41-
expect('slow function should not be called').to.equal(undefined);
38+
expect('slow function should not be called').toEqual(undefined);
4239
done(null, 2);
4340
}, 500);
4441
}
4542
bach.parallel(fn1, slowFn, fn3, fnError)(function(error, results) {
46-
expect(error).to.be.instanceof(Error);
47-
expect(results).to.deep.equal([1, undefined, 3, undefined]);
43+
expect(error).toBeAn(Error);
44+
expect(results).toEqual([1, undefined, 3, undefined]);
4845
done();
4946
});
5047
});
@@ -54,19 +51,19 @@ describe('parallel', function() {
5451
var fns = [fn1, fn2, fn3];
5552
bach.parallel(fn1, fn2, fn3, {
5653
create: function(fn, idx) {
57-
expect(fns).to.include(fn);
54+
expect(fns).toInclude(fn);
5855
arr[idx] = fn;
5956
return arr;
6057
},
6158
before: function(storage) {
62-
expect(storage).to.equal(arr);
59+
expect(storage).toEqual(arr);
6360
},
6461
after: function(result, storage) {
65-
expect(storage).to.equal(arr);
62+
expect(storage).toEqual(arr);
6663
},
6764
})(function(error) {
68-
expect(error).to.equal(null);
69-
expect(arr).to.deep.include(fns);
65+
expect(error).toEqual(null);
66+
expect(arr).toEqual(fns);
7067
});
7168
done();
7269
});

test/series.js

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var bach = require('../');
96

@@ -29,8 +26,8 @@ describe('series', function() {
2926

3027
it('should execute functions in series, passing results', function(done) {
3128
bach.series(fn1, fn2, fn3)(function(error, results) {
32-
expect(error).to.equal(null);
33-
expect(results).to.deep.equal([1, 2, 3]);
29+
expect(error).toEqual(null);
30+
expect(results).toEqual([1, 2, 3]);
3431
done();
3532
});
3633
});
@@ -42,8 +39,8 @@ describe('series', function() {
4239
}, 500);
4340
}
4441
bach.series(fn1, slowFn, fn3, fnError)(function(error, results) {
45-
expect(error).to.be.an.instanceof(Error);
46-
expect(results).to.deep.equal([1, 2, 3, undefined]);
42+
expect(error).toBeAn(Error);
43+
expect(results).toEqual([1, 2, 3, undefined]);
4744
done();
4845
});
4946
});
@@ -53,19 +50,19 @@ describe('series', function() {
5350
var fns = [fn1, fn2, fn3];
5451
bach.series(fn1, fn2, fn3, {
5552
create: function(fn, idx) {
56-
expect(fns).to.include(fn);
53+
expect(fns).toInclude(fn);
5754
arr[idx] = fn;
5855
return arr;
5956
},
6057
before: function(storage) {
61-
expect(storage).to.equal(arr);
58+
expect(storage).toEqual(arr);
6259
},
6360
after: function(result, storage) {
64-
expect(storage).to.equal(arr);
61+
expect(storage).toEqual(arr);
6562
},
6663
})(function(error) {
67-
expect(error).to.equal(null);
68-
expect(arr).to.deep.include(fns);
64+
expect(error).toEqual(null);
65+
expect(arr).toEqual(fns);
6966
});
7067
done();
7168
});

test/settleParallel.js

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var bach = require('../');
96

@@ -29,8 +26,8 @@ describe('settleParallel', function() {
2926

3027
it('should execute functions in parallel, passing settled results', function(done) {
3128
bach.settleParallel(fn1, fn2, fn3)(function(errors, results) {
32-
expect(errors).to.equal(null);
33-
expect(results).to.deep.equal([1, 2, 3]);
29+
expect(errors).toEqual(null);
30+
expect(results).toEqual([1, 2, 3]);
3431
done();
3532
});
3633
});
@@ -42,12 +39,9 @@ describe('settleParallel', function() {
4239
}, 500);
4340
}
4441
bach.settleParallel(fn1, slowFn, fn3, fnError)(function(errors, results) {
45-
expect(errors)
46-
.to.be.an.array()
47-
.and.to.not.be.empty();
48-
expect(errors[0])
49-
.to.be.an.instanceof(Error);
50-
expect(results).to.deep.equal([1, 2, 3]);
42+
expect(errors).toBeAn(Array);
43+
expect(errors[0]).toBeAn(Error);
44+
expect(results).toEqual([1, 2, 3]);
5145
done();
5246
});
5347
});
@@ -57,19 +51,19 @@ describe('settleParallel', function() {
5751
var fns = [fn1, fn2, fn3];
5852
bach.settleParallel(fn1, fn2, fn3, {
5953
create: function(fn, idx) {
60-
expect(fns).to.include(fn);
54+
expect(fns).toInclude(fn);
6155
arr[idx] = fn;
6256
return arr;
6357
},
6458
before: function(storage) {
65-
expect(storage).to.equal(arr);
59+
expect(storage).toEqual(arr);
6660
},
6761
after: function(result, storage) {
68-
expect(storage).to.equal(arr);
62+
expect(storage).toEqual(arr);
6963
},
7064
})(function(error) {
71-
expect(error).to.equal(null);
72-
expect(arr).to.deep.include(fns);
65+
expect(error).toEqual(null);
66+
expect(arr).toEqual(fns);
7367
});
7468
done();
7569
});

test/settleSeries.js

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var bach = require('../');
96

@@ -29,8 +26,8 @@ describe('settleSeries', function() {
2926

3027
it('should execute functions in series, passing settled results', function(done) {
3128
bach.settleSeries(fn1, fn2, fn3)(function(errors, results) {
32-
expect(errors).to.equal(null);
33-
expect(results).to.deep.equal([1, 2, 3]);
29+
expect(errors).toEqual(null);
30+
expect(results).toEqual([1, 2, 3]);
3431
done();
3532
});
3633
});
@@ -42,12 +39,9 @@ describe('settleSeries', function() {
4239
}, 500);
4340
}
4441
bach.settleSeries(fn1, slowFn, fn3, fnError)(function(errors, results) {
45-
expect(errors)
46-
.to.be.an.array()
47-
.and.to.not.be.empty();
48-
expect(errors[0])
49-
.to.be.an.instanceof(Error);
50-
expect(results).to.deep.equal([1, 2, 3]);
42+
expect(errors).toBeAn(Array);
43+
expect(errors[0]).toBeAn(Error);
44+
expect(results).toEqual([1, 2, 3]);
5145
done();
5246
});
5347
});
@@ -57,19 +51,19 @@ describe('settleSeries', function() {
5751
var fns = [fn1, fn2, fn3];
5852
bach.settleSeries(fn1, fn2, fn3, {
5953
create: function(fn, idx) {
60-
expect(fns).to.include(fn);
54+
expect(fns).toInclude(fn);
6155
arr[idx] = fn;
6256
return arr;
6357
},
6458
before: function(storage) {
65-
expect(storage).to.equal(arr);
59+
expect(storage).toEqual(arr);
6660
},
6761
after: function(result, storage) {
68-
expect(storage).to.equal(arr);
62+
expect(storage).toEqual(arr);
6963
},
7064
})(function(error) {
71-
expect(error).to.equal(null);
72-
expect(arr).to.deep.include.members(fns);
65+
expect(error).toEqual(null);
66+
expect(arr).toEqual(fns);
7367
});
7468
done();
7569
});

test/verifyArguments.js

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
'use strict';
22

3-
var lab = exports.lab = require('lab').script();
4-
var describe = lab.describe;
5-
var it = lab.it;
6-
var expect = require('code').expect;
3+
var expect = require('expect');
74

85
var verifyArguments = require('../lib/helpers').verifyArguments;
96

@@ -13,7 +10,7 @@ describe('verifyArguments', function() {
1310

1411
it('should act as pass-through for a valid set of arguments', function(done) {
1512
var args = [validArg, validArg];
16-
expect(verifyArguments(args)).to.deep.equal(args);
13+
expect(verifyArguments(args)).toEqual(args);
1714
done();
1815
});
1916

@@ -22,7 +19,7 @@ describe('verifyArguments', function() {
2219
verifyArguments([validArg, 'invalid', validArg]);
2320
}
2421

25-
expect(invalid).to.throw('Only functions can be combined, got string for argument 1');
22+
expect(invalid).toThrow('Only functions can be combined, got string for argument 1');
2623
done();
2724
});
2825

@@ -31,7 +28,7 @@ describe('verifyArguments', function() {
3128
verifyArguments([]);
3229
}
3330

34-
expect(empty).to.throw('A set of functions to combine is required');
31+
expect(empty).toThrow('A set of functions to combine is required');
3532
done();
3633
});
3734
});

0 commit comments

Comments
 (0)