Como você zomba do serviço Angular que é uma função?
Nós temos um que chamamos deCORShttpService
, que é basicamente um wrapper ao redor do$http
serviço, mas encapsula algumas funcionalidades do CORS que precisamos. Agora estou escrevendo alguns testes para um serviço que tem oCORShttpService
injetado nele. Este serviço tem código como este:
CORShttpService({method: requestMethod, url: getUrl(path), data: data}).
success(function(data, status, headers) {
//do success stuff
}).
error(function(data, status, headers) {
//do error stuff
});
Eu quero zombar da chamada paraCORShttpService
, mas não sei como fazer isso. Estou usando o Jasmine e seuspyOn
função requer um objeto para zombar da função no objeto. MinhasCORShttpService
não está ligado a nenhum objeto, então não sei como zombar dele. Sim, eu poderia usar$httpBackend
para zombar dos pedidos que eventualmente são definidos noCORShttpService
, mas eu não quero entrar nesse serviço em primeiro lugar. Eu quero isolar o teste de unidade e simplesmente zombar das chamadas externas. Existe alguma maneira que eu possa zombar deste serviço que é apenas uma função?