UNPKG

1.4 kBJavaScriptView Raw
1var Lab = require('lab');
2var async = require('async');
3var Moonboots = require('..');
4
5function arrEqual(arr) {
6 if (arr.length > 0) {
7 for (var i = 1; i < arr.length; i++) {
8 if (arr[i] !== arr[0]) {
9 return arr[i];
10 }
11 }
12 }
13 return true;
14}
15
16
17Lab.experiment('Hash is the same', function () {
18 function setup(done) {
19 var options = {
20 main: __dirname + '/../fixtures/app/appImports.js',
21 jsFileName: 'app',
22 minify: false
23 };
24 var moonboots = new Moonboots(options);
25 moonboots.on('ready', function () {
26 done(moonboots);
27 });
28 }
29
30 Lab.test('50 times', function (done) {
31 async.timesSeries(50, function (index, next) {
32 setup(function (moonboots) {
33 var filename = moonboots.jsFileName();
34 moonboots.jsSource(function (err, js) {
35 next(null, [filename, js]);
36 });
37 });
38 }, function (err, results) {
39 var filenames = results.map(function (r) {
40 return r[0];
41 });
42 var js = results.map(function (r) {
43 return r[1];
44 });
45 Lab.expect(arrEqual(filenames)).to.equal(true);
46 Lab.expect(arrEqual(js)).to.equal(true);
47 done();
48 });
49 });
50});