public void MapFrom_ShouldUseResolverDependencies_WhenMapIsCalled() { const int expectedID = 2; string expectedValue = "Shipping"; var container = new WindsorIoCContainer(); var databaseMock = new Mock <IDatabase>(); var databaseFactoryMock = new Mock <IDatabaseFactory>(); var cacheMock = new Mock <ICache>(); var cacheFactoryMock = new Mock <ICacheFactory>(); databaseMock .Setup(mock => mock.Execute(It.IsAny <string>(), null)) .Returns(GetMockData(expectedID, expectedValue)); databaseFactoryMock .Setup(mock => mock.Create(It.IsAny <string>())) .Returns(databaseMock.Object); cacheFactoryMock .Setup(mock => mock.Create(null)) .Returns(cacheMock.Object); var iocContainerSettings = new IoCContainerSettings { RegistrationLifetime = RegistrationLifetime.Transient, RegistrationName = nameof(LookupDataValueToKeyDatabaseResolver <int>), RegistrationNameFormat = "{0}" }; container.Settings = iocContainerSettings; container.Register(new LookupDataValueToKeyDatabaseResolver <int>(databaseFactoryMock.Object, cacheFactoryMock.Object)); Mapper.Initialize(cfg => { var addressToDomainMap = new AddressToDomainMap(cfg); addressToDomainMap.Configure(); cfg.AddProfile(addressToDomainMap); cfg.ConstructServicesUsing(container.Resolve); }); var input = new AddressDTO { AddressType = expectedValue }; Address output = Mapper.Map <AddressDTO, Address>(input); Assert.NotNull(output); Assert.NotNull(output.AddressType); Assert.Equal(expectedID, output.AddressType.Id); Assert.Equal(expectedValue, output.AddressType.Name); Output(output); }
private static void SetupIoC() { var container = new WindsorIoCContainer(new WindsorContainer().Configure()); var resolver = new WindsorDependencyResolver(container); DependencyResolver.SetResolver(resolver); }