angular.js Assert error throw async

时间:2014-12-19 12:04:37

标签: javascript angularjs asynchronous assert throw

我正在使用angular.js使用karma来测试sinon-chai个应用。我需要测试这样的代码:

var sync = function() {
  async.then(function() {
    // success
  }, function() {
    throw Error('foo');
  });
}

sync是我要测试的功能。 async是一个返回$q承诺的函数,我想测试它失败会抛出错误。

我理想的考试服装:

describe('unit', function() {
  it('should throw an error', function() {
    expect(function() {
      return sync();
    }).to.throw(Error, 'foo');
  })
});

但是,它在afterEach()处失败,因为错误在$digest上抛出。

我怎样才能完成这项测试?

非常感谢!

0 个答案:

没有答案