为什么我的 jasmine 单元测试没有等待 'done'?

Why is my jasmine unit test not waiting for 'done'?

我在我的节点应用程序中进行了测试...

it('will call done', function(done) {
            myObj.fn(function(){

                done();
           }
});

和代码....

myObj.fn = function(success){
   setTimeout(2000000000,success);
}

当我 运行 测试时,我在输出中得到这个...

-MacBook-Pro:torus-pqdata user$ npm test

> torus-pqdata@0.0.0 test /Stuff/code bases/2015/torus-pqdata
> jasmine-node specs/

然而,正如您所看到的,单元测试只是退出而没有失败,但我需要它超时(我正在尝试模拟挂起的东西)。我如何让它超时?

交换 setTimeout 中的参数:

myObj.fn = function(success){
    setTimeout(success, 200000000);
}

这里有一些来自 MDN 的参考:https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout