|
1
2
我认为您实际上不想在测试期间调用任何ngbootstrap代码——毕竟您希望对代码进行单元测试,而不是对它们进行单元测试。:) 因此,我建议通过设置一个自己的可观察时间,并用它调用您的函数来模拟用户实际键入的内容。也许每100毫秒模拟发送一个字符。类似这样:
更新: 我在这里组织了一场Stackblitz来测试这一点: https://stackblitz.com/edit/stackoverflow-question-52914753 (打开左侧的app文件夹,单击my.component.spec.ts查看测试文件) 一旦我在那里得到了它,很明显是错误的——Observable没有被订阅,因为订阅似乎是由ngbootstrap完成的,所以对于测试,我们需要明确订阅。这是我的新建议规格(取自Stackblitz):
|
|
2
1
请尝试在服务内移动可观察的: 组件:
服务:
如果你需要更多的细节,我可以扩大我的答案。 |