我有一个组件"嵌套"这是一个网络请求,我从另一个组件" parent"中使用这个组件。
我试图为" parent"编写一些集成测试,但是它们会因为"嵌套"而失败。组件的Web请求失败。
我只是希望嘲笑一些"嵌套"而不是嘲笑请求。防止Web请求的功能。这可以通过reopen
轻松实现,但当然这会导致测试"嵌套"失败。
有没有人知道是否有一种方法可以存储"嵌套"或者可以使用注册表替换"嵌套"扩展课程?
答案 0 :(得分:2)
要换出一个组件,只是为了单个测试模块的目的,只需注册一个自定义组件来替换原始组件(仅适用于测试模块的范围):
moduleForComponent('component-under-test', 'description', {
integration: true,
beforeEach() {
this.container.registry.register('component:nested-component', NestedComponent.extend({
modifiedFunction() {
}
}));
}
});