如何模拟$http
以便在调用特定URL时调用.error
函数?
beforeEach(angular.mock.inject(function ($httpBackend) {
$httpBackend.when('GET', '/ErrorReturningURL').respond(/* report a 404 */);
}));
在我的单元测试中,我将观察某个函数调用。
答案 0 :(得分:8)
您可以对when
返回的值使用.respond
function的替代形式:
beforeEach(angular.mock.inject(function ($httpBackend) {
$httpBackend.when('GET', '/ErrorReturningURL').respond(404, '');
}));
我对function([status,] data[, headers])
函数使用语法respond
。因此,我需要显式传递第二个参数data
以确保第一个参数被解释为status
。