angular - 在 Angular 中将 BehaviorSubject 测试为 Observable - Jasmine
问题描述
我是测试的新手,我在测试以下代码时遇到了麻烦:
ngOnInit() {
... some piece of code
this.dataService.currentUserDataObservable.pipe(
takeUntil(this.ngUnsubscribe)
).subscribe(
currentUserData => {
this.currentUser = currentUserData;
}
);
}
该变量this.currentUser
将用于根据其属性显示按钮。该变量currentUserDataObservable
是一个 BehaviorSubject.asObservable()。当用户登录时,dataService 中的 currentUserDataSubject 将调用其下一个函数来发送 currentUserData。
我想编写一个测试来检查当属性为真时是否显示按钮(类似于this.currentUser.showButton == true
)以及另一个测试来检查其他情况。
这样做的正确方法是什么。我阅读了一些关于 spyOn、fakeAsync 的文章,但我无法针对这种特定情况进行重现。
谢谢
解决方案
推荐阅读
- sql - 计算 teradata 中每行的条目数
- serial-port - 现场 Modbus RTU 硬件响应延迟不正确
- microsoft-graph-api - 使用 Graph API 离开团队或删除团队时更新浏览器
- node.js - 是否可以在没有路由的情况下使用带有 nodeJS / Express 的 EJS
- drools - 累积触发不必要的规则后果
- c# - BufferedWaveProvider 的问题
- html - Angular Key-Value如何使用html插入新的Key-Value
- javascript - 我可以让两个更改事件侦听器互相触发吗?
- asp.net-core - ASP.NET CORE Kendo UI TextBoxFor 无法加载
- python - 在 Django 中使用循环将字典添加到另一个字典中