运行回调时的摩卡测试

mocha test when callback is run

本文关键字:摩卡 测试 回调 运行      更新时间:2023-09-26

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

在库中脚本加载成功:

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

摩卡.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);
      });
    }
  });
})();

这样,描述 -> 它 ->自定义回调函数 -> 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();
        }
      });
  });
})();