Angular $ httpBackend测试不会捕获$ http调用

时间:2016-02-16 20:17:35

标签: javascript angularjs

我使用角度$httpBackend对单个测试API功能进行单元测试。该应用程序对大多数API端点使用$resource,但只有一个原始$http调用(与DELETE请求一起发送数据,而不是我的选择)。

该模型有一个简单的删除方法,如下所示:

this.delete = function(target) {
  return $http({method: 'DELETE', url: '/api/delete' + this.id, data: target});
};

一个简单的测试用例,失败了No pending request to flush

it('calls the API', function() {
    httpBackend.expect('DELETE', '/api/delete').respond(200, '');
    scope.obj.delete(1);
    httpBackend.flush();
});

此测试设置似乎适用于使用$resource的任何端点,但只要我使用$http就会失败。我确认已调用.delete()方法,并按预期返回promise

我是否遗漏了文档中的内容?

0 个答案:

没有答案