При тестировании устройства, которое использует $resource
, что лучше всего - используя $httpBackend
или издеваться над ресурсом?
У меня есть следующие услуги:
angular.module('example')
.factory('MyService', ['$resource',
function($resource) {
var service = $resource('/api/example/', {}, {
create: {
method: 'POST'
}
});
var create = function(payload) {
return service.create({}, payload).$promise;
};
return {
create: create
};
}
]);
Использование $ httpbackend
describe('#create', function() {
it('should send a post request to api/example', function() {
$httpBackend.expectPOST('/api/example')
.respond({
name: 'Something'
});
MyService.create({ example: 'payload' }});
$httpBackend.flush();
expect(MyService.create).toEqual({example: 'payload'})
});
});
Используйте $ httpBackend, это правильный путь. – Chandermani