Я пытаюсь проверить службу с помощью метода, который возвращает обещание в моем приложении Angular.
Но я продолжаю получать сообщение об ошибке Asyn c функция не завершилась в течение 5000 мс
Мой сервис выглядит так
public async startApp(data) {
if (data === { }) this.logout()
const url = environment.API_HOST + environment.ENDPOINT + '/start-app'
return this.sendRequest<responseType>(url, data).toPromise()
}
private sendRequest<T>(url: string, data: any): Observable<T> {
return this.http.post<T>(
url, data, { headers: this.headers(), observe: 'response', responseType: 'json' }
).pipe(
map((resp: any) => {
return resp.body
}))
}
А мой файл spe c выглядит так:
describe('MyService', () => {
let service: MyService
TestBed.configureTestingModule({ providers: [ MyService ] })
service = TestBed.get(MyService)
})
it('should start app', async (done: DoneFn) => {
const res = await service.startApp({ data: 'someData' })
done()
})
Что я делаю не так?
Если возможно, я бы не стал шпионить за sendRequest
, так как это частный метод, и я не могу проверить это иначе