Я учусь писать модульный тест на Angular.Я создаю httpService, имеющий метод sendToServer.Каждый компонент использует его для отправки запроса на сервер:
sendToServer(method, url, body, header, onSuccessCallback, onErrorCallback?);
Вот мой компонент
export class LoginComponent implements OnInit {
constructor(private http: HttpService) {
}
data ;
ngOnInit() {
this.getToken();
}
getToken(){
this.http.sendToServer("GET", "/api/tokent",{}, null, data=>{
this.data = data;
});
}
}
Вот мой код модульного теста:
it("should call getTokent and return data", fakeAsync(() => {
const response = "abc";
component.getToken();
spyOn(service, 'sendToServer').and.returnValue(of(response));
tick();
fixture.detectChanges();
expect(component.data).toEqual(response);
}));
Как можноЯ тестирую в функции обратного вызова http.senntoServer