Javascript Can';我不明白为什么摩卡咖啡考试通过了

Javascript Can';我不明白为什么摩卡咖啡考试通过了,javascript,node.js,mocha.js,Javascript,Node.js,Mocha.js,我正在学习用javascript进行测试,我正在运行这个mocha测试 describe("Fetches Coordinates", function() { it("searches the database for coordinates", function() { var boundary = routes.setBoundries(20, 80, 20, 80) routes.searchCoords(boundary,

我正在学习用javascript进行测试,我正在运行这个mocha测试

describe("Fetches Coordinates", function() {
        it("searches the database for coordinates", function() {
            var boundary = routes.setBoundries(20, 80, 20, 80)
            routes.searchCoords(boundary, function(err,data) {
                expect(data.length).to.equal(100)
            });
        });
    });
这就是它正在使用的方法

exports.searchCoords = function searchCoords(boundary, callback){
     models.sequelize.query('SELECT "data".longitude, "data".latitude, "data".ipscount FROM ('
                + ' SELECT * FROM "DataPoints" as "data"'
                + ' WHERE "data".longitude BETWEEN '
                + boundary.xlowerbound + ' and ' + boundary.xupperbound + ') data'
                + ' WHERE "data".latitude BETWEEN '
                + boundary.ylowerbound + ' and '
                + boundary.yupperbound + ';', { type: models.sequelize.QueryTypes.SELECT}).then(function(data) {
                    callback(data);
                });                 
}
当我运行测试时,Mocha似乎跳过了回调并通过了。我似乎不能把这个弄对。正确的语法是什么

用Mocha测试异步代码再简单不过了!测试完成后,只需调用回调。通过将回调(通常命名为done)添加到它()中,Mocha将知道它应该等待完成

用Mocha测试异步代码再简单不过了!测试完成后,只需调用回调。通过将回调(通常命名为done)添加到它()中,Mocha将知道它应该等待完成


令人惊叹的!我以前看到过,但我想我是把它放在描述函数中,而不是it函数中。谢谢令人惊叹的!我以前看到过,但我想我是把它放在描述函数中,而不是it函数中。谢谢
   it("searches the database for coordinates", function(done) {
        var boundary = routes.setBoundries(20, 80, 20, 80)
        routes.searchCoords(boundary, function(err,data) {
            expect(data.length).to.equal(100)
            done();
        });
    });