Welcome to mirror list, hosted at ThFree Co, Russian Federation.

json.spec.js « reporters « test « mocha-3.1.0 « lib « tests - github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: e7b8955757fb4a1489fa1ba44e1c380d37a187a4 (plain)
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
var Mocha = require('../../')
  , Suite = Mocha.Suite
  , Runner = Mocha.Runner
  , Test = Mocha.Test;

describe('json reporter', function(){
  var suite, runner;

  beforeEach(function(){
    var mocha = new Mocha({
      reporter: 'json'
    });
    suite = new Suite('JSON suite', 'root');
    runner = new Runner(suite);
    var mochaReporter = new mocha._reporter(runner);
  });

   it('should have 1 test failure', function(done){
     var testTitle = 'json test 1';
     var error = { message: 'oh shit' };

     suite.addTest(new Test(testTitle, function (done) {
       done(new Error(error.message));
     }));

     runner.run(function(failureCount) {
       failureCount.should.be.exactly(1);
       runner.should.have.property('testResults');
       runner.testResults.should.have.property('failures');
       runner.testResults.failures.should.be.an.instanceOf(Array);
       runner.testResults.failures.should.have.a.lengthOf(1);

       var failure = runner.testResults.failures[0];
       failure.should.have.property('title', testTitle);
       failure.err.message.should.equal(error.message);
       failure.should.have.properties('err');

       done();
     });
  });

  it('should have 1 test pending', function(done) {
    var testTitle = 'json test 1';

     suite.addTest(new Test(testTitle));

     runner.run(function(failureCount) {
       failureCount.should.be.exactly(0);
       runner.should.have.property('testResults');
       runner.testResults.should.have.property('pending');
       runner.testResults.pending.should.be.an.instanceOf(Array);
       runner.testResults.pending.should.have.a.lengthOf(1);

       var pending = runner.testResults.pending[0];
       pending.should.have.property('title', testTitle);

       done();
     });
  })

});