1

我正在测试一个 api,它在函数末尾的回调中已经有一个回调。我想将其包装在测试中以验证​​对象是否正确,但这似乎不起作用。callbackEnd() 被调用,但就是这样。

在库上一个脚本加载成功:

function callback() {
  // populate gpt object
  if(typeof callbackEnd === 'function') {
    callbackEnd();
  }
}

Mocha.js 测试:

"use strict";
(function() {

  describe("Callback Success", function() {
    function callbackEnd() {

      console.log('callbackEnd() called');

      it('GPT returned advars', function() {
        expect(Object.keys(someobj).length).to.beGreaterThan(0);
        console.log('GPT loaded successfully, ' + Object.keys(someobj).length);
      });

    }
  });

})();
4

1 回答 1

0

好了,描述 -> 它 -> 自定义回调函数 -> done();

 "use strict";
(function() {

  describe("Callback Success", function() {

      it('GPT returned advars', function(done) {

        function callbackEnd() {
          expect(Object.keys(someobj).length).to.not.equal(0);
          console.log('GPT loaded successfully, ' + Object.keys(someobj).length);
          done();
        }

      });
  });
})();
于 2015-06-18T23:23:22.787 回答