我正在学习jest,需要帮助来测试Angular 服务中的一个特定函数。这个函数没有参数,并且订阅了一个get函数,订阅的数据被传递给另外两个函数。我有模拟数据,但是在编写测试时遇到了麻烦。
public export(): void {
this.getDataValues().subscribe((data) => {
this.exportDelays(data.delay);
this.exportCancels(data.cancels);
});
}
如有任何帮助,我们将不胜感激,谢谢。
1条答案
按热度按时间nhhxz33t1#
你可以通过模拟
getDataValues()
函数的返回值来测试它。请注意,您需要返回一个可观察对象,它通过将
of(mockData)
作为returnValue传递来发出您的mockData。只有这样,该函数才能订阅并触发其他服务方法。