sails测试控制器没有完全执行

时间:2015-08-28 17:28:50

标签: node.js unit-testing sails.js mocha

我正在使用sailsjs v0.11

正如testing文档中所述,我已经配置了我的应用程序。

我的UserController.test.js

var request = require('supertest');
console.log('log 1');
describe('UserController', function() {
  console.log('log 2');
  describe('index', function() {
    console.log('log 3');
    it('should return success', function(done) {
      console.log('log 4');
      request(sails.hooks.http.app)
        .get('/user')
        .expect(200, done);
    });
  });

});

我的User.test.js

describe.only('UsersModel', function() {

  describe('#find()', function() {
    it('should check find function', function (done) {
      User.find()
        .then(function(results) {
          done();
        })
        .catch(done);
    });
  });

});

如果我执行PORT=9999 mocha test/bootstrap.test.js test/unit/**/*.test.js我只能看到

log1
log2
log3

在我的控制台中。 console.log(log3)之后的代码未被执行。 但是模型中的My User.test.js工作正常。

这是什么原因?

1 个答案:

答案 0 :(得分:2)

我已将User.test.js更改为评论中提到的@ jedd.ahyoung并且一切正常

describe('UsersModel', function() {

  describe('#find()', function() {
    it('should check find function', function (done) {
      User.find()
        .then(function(results) {
          done();
        })
        .catch(done);
    });
  });

});