gpt4 book ai didi

unit-testing - 使用另一个提供者的实例在 TestBed 中实例化一个提供者

转载 作者:行者123 更新时间:2023-11-28 20:28:18 26 4
gpt4 key购买 nike

如何使用另一个提供者的实例在 TestBed.configureTestingModule() 中实例化一个提供者?

一个例子(显然不起作用):

beforeEach(() => {
TestBed.configureTestingModule({
providers: [
{ provide: ServiceOne, useValue: new ServiceOne('parameterOne')},
{ provide: ServiceTwo, useValue: new ServiceTwo(TestBed.get(ServiceOne), 'parameterTwo')}
]
});
});

最佳答案

使用 factory provider

providers: [
{ provide: ServiceOne, useValue: new ServiceOne('parameterOne')},
{
provide: ServiceTwo,
deps: [ ServiceOne ],
useFactory: (serviceOne: ServiceOne) => {
return new ServiceTwo(serviceOne, 'parameterTwo')
}
}
]

关于unit-testing - 使用另一个提供者的实例在 TestBed 中实例化一个提供者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43395869/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com