Я унаследовал сотни таких утверждений:
mockKernel.Setup(x => x.Bind<IAddressService>().To<AddressService>())
.Returns(new BindingConfigurationBuilder<AddressService>(bindingConfiguration, "ServiceName", mockKernel.Object));
... как часть тестов для сотен операторов, похожих на это:
_kernel.Bind<IAddressService>().To<AddressService>().InRequestScope();
Я хотел бы написать что-то вроде этого:
private void SetupBindAtoB<TInterface, TImplementation>(TInterface a, TImplementation b)
where TImplementation : TInterface
{
mockKernel.Setup(x => x.Bind<TInterface>().To<TImplementation>())
.Returns(new BindingConfigurationBuilder<TImplementation>(bindingConfiguration, "ServiceName", mockKernel.Object));
}
... а затем назовите это так:
SetupBindAtoB(IAddressService, AddressService);
Но я не могу. Я должен передать реальный объект SetupBindAtoB
, например:
SetupBindAtoB((IAddressService) null, (AddressService) null);
Можно ли избежать создания реальных объектов для передачи SetupBindAtoB
?