具有静态属性的角桩服务

时间:2018-11-26 13:42:28

标签: angular unit-testing static karma-runner

我有一个用APP_INITIALIZE调用的服务,以执行一些步骤来为其属性分配一个值。这个属性是静态的,我的另一个服务依赖它。如何使用静态值对该服务进行存根?

诀窍在于provide在这种情况下不起作用,因为它是从导入中使用的。我不想使用真正的初始化服务,因为如果没有配置文件,它可能会中断,并且我也不想破坏依赖该服务的测试。

1 个答案:

答案 0 :(得分:0)

如果您在其他测试中使用此服务,则需要在TestBed中声明

{provide: APP_INITIALIZE, useClass: initializeStub}

其中initializeStub类似于:

export class intializeStub extends APP_INITIALIZE {
blah() {
  return 'hi';
}}