我想知道如何在if语句中更改和测试从订阅返回的值。
使用一种预订数据服务的方法,如下所示:
this.service.returnResponse().subscribe((value) => {
if (value !== null) {
....test in here
}
});
测试中的数据将返回null,我想将返回的值更改为我设置的参数,例如:
it('should query data service and subscribe to response TRUE ()', () => {
const response: string[] = ['NOT-NULL'];
service.returnEndResponseMS().subscribe(value => {
value ==..andReturn(response)
});
component.subscribeToConnection();
fixture.detectChanges();
});
我们如何更改预订的返回值以测试内部条件块?
答案 0 :(得分:0)
简单的解决方案:
it('should query data service and subscribe to response TRUE ()', () => {
const response: string[] = ['NOT-NULL'];
spyOn(service, 'returnResponse').and.returnValue(of(response));
service.returnResponse).subscribe(value => {
expect(something to be equal to something);
expect(something to be called);
});
component.subscribeToConnection();
fixture.detectChanges();
});