【发布时间】:2017-01-10 14:53:44
【问题描述】:
目前我正在覆盖提供者以使用这样的模拟服务:
beforeEach(inject([TestComponentBuilder], (tcb: TestComponentBuilder) => {
tcb.overrideProviders(AddFieldToObjectDropdownComponent,
[
provide(ServiceA, { useClass: MockServiceA })),
provide(ServiceB, { useClass: MockServiceB }))
])
...
我想对组件使用的管道做同样的事情。我试过了,provide(PipeA, { useClass: MockPipeA }) 和 provide(PipeA, { useValue: new MockPipeA() }) 但都没有工作。
【问题讨论】:
-
当您在 4 个月内没有任何答案时,这并不乐观。你有想过这个吗?
-
@coblr 不,不幸的是,这对我来说不是一个高优先级问题,但我很快会使用新的测试 API 再次尝试,也许现在有一个解决方法。
-
有什么解决办法吗?我试图不声明原始管道,而是创建一个模拟管道并声明它。但不知何故,管道渲染结果总是显示一个空字符串 ''
-
@harunurhan 你只需要模板中的管道吗?
-
现在是 2019 年,仍然发生在我身上 :( 我期待“提供”的事情能够奏效。
标签: unit-testing angular angular2-testing angular2-pipe