如何在没有回调的情况下使用mocha测试异步函数

时间:2014-03-18 02:36:03

标签: javascript asynchronous mocha

我有一个像这样的简单函数,里面有一个异步函数 它:

var b = function(response) {

    response = '';

    async_function(function (response) {
        response = 'test';
    });

}

我想测试函数b以查看它是否设置了响应的值 到"测试"。如果没有,它应该引发错误。我不想添加参数 对于b的回调函数,我不想等待使用setTimeOut()。 使用mocha(和chai)测试b的正确方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

var b = function(response) {

    response = '';

    async_function(function (response) {
        response = 'test';
    });

}

您无法知道何时会设置回复。

除非您使用setTimeout,否则无法对其进行测试,因此您应该重构代码。