0
このようなフローについて正しい方法はありますか? BarService
にはブール値を返す関数があります。この関数は、結果自体を計算するか、または観測可能な呼び出しの結果に依存する可能性があります(FooService
)。関数内で観測可能な/サブスクリプションのフローを同期と正しく結合する方法
私は、テストの結果が真であることを期待していますが、それは未定義です。
foo.service.ts
doObservableThing(): Observable<boolean> {
return Observable.of(true);
}
bar.service.ts
doThing(): boolean {
if (someCondition) { // will be true for the test below
this.fooService.doObservableThing().subscribe(
() => { return true; },
() => { return false; });
} else {
return false;
}
}
bar.service.spec.ts
it('should return true',() => {
let result = barService.doThing();
expect(result).toBe(true); // result is undefined
});