【发布时间】:2021-09-28 06:09:22
【问题描述】:
我需要为此获取创建一个测试,但每次尝试我都会收到错误“TypeError: Cannot read property 'subscribe' of undefined”
我的服务功能
getAPICard(): Observable<any> {
return this.http.get<any[]>(`${this.GET_APICard}`);
}
我的规格.ts
it('testing get api', (done:DoneFn) =>{
const mockObj = [{id:'1',
title:'title',
description:'description',
image: 'imagem',
amount: 10
}];
httpClientSpy.get.and.returnValue(of(mockObj)).and.callThrough();
modalIndicationService.getAPICard().subscribe(
dados => {
expect(dados).toEqual(mockObj, 'mockObj');
done()
},
done.fail
)
expect(httpClientSpy.get.calls.count()).toBe(1, 'one call');
done();
})
【问题讨论】:
-
如果您将使用
returnValue返回的内容与documentation 返回的内容进行比较,您会发现哪些主要区别? -
同时展示你是如何在测试中设置
modalIndicationService,以及getAPICard是如何实现的。
标签: angular karma-jasmine angular2-services angular-test