Angular Karma单元测试等待Isempty发出价值
我有以下用于处理错误的代码:
catchError((error) => {
return statement ? EMPTY : otherValue;
}),
我正在尝试为此编写一个单元测试。在这里我取得了成就。
it('test description', fakeAsync(() => {
let saved: boolean;
action = new action({ data: 'some data'});
action$.next(action);
effects.save.pipe(isEmpty()).subscribe((data: boolean) => {
console.log('data:', data);
saved = data;
});
flush();
console.log('saved:', saved);
expect(saved).toBeTrue();
}));
我的输出看起来像:
```
'saved:', undefined
'data:', true
Error: Expected undefined to be true.
```
如何改进这次测试?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您正在尝试同步访问异步值。您应该在异步处理程序内使用
完成的
函数(内部subscribe()
)。You're trying to synchronously access asynchronous value. You should use a
done
function inside the async handler (insidesubscribe()
).