private static void LoadViaModules() { var container = new UnityContainer(); IServiceLocator unityServiceLocator = new UnityServiceLocatorAdapter(container); container.RegisterInstance<IServiceLocator>(unityServiceLocator) .RegisterType<IModuleInitializer, ModuleInitializer>() .RegisterInstance<IModuleCatalog>(new ConfigurationModuleCatalog()) .RegisterInstance<ILoggerFacade>(new TextLogger()) .RegisterType<IModuleManager, ModuleManager>(); IModuleManager manager = container.Resolve<IModuleManager>(); manager.Run(); }
public void ShouldForwardResolveAllToInnerContainer() { IEnumerable<object> list = new List<object> {new object(), new object()}; IUnityContainer container = new MockUnityContainer() { ResolveAllMethod = delegate { return list; } }; IServiceLocator containerAdapter = new UnityServiceLocatorAdapter(container); Assert.AreSame(list, containerAdapter.GetAllInstances(typeof (object))); }
public void ShouldForwardResolveToInnerContainer() { object myInstance = new object(); IUnityContainer container = new MockUnityContainer() { ResolveMethod = delegate { return myInstance; } }; IServiceLocator containerAdapter = new UnityServiceLocatorAdapter(container); Assert.AreSame(myInstance, containerAdapter.GetInstance(typeof (object))); }
private static void SetupMockedContainerForVerificationTests(Mock<IUnityContainer> mockedContainer) { var mockedModuleInitializer = new Mock<IModuleInitializer>(); var mockedModuleManager = new Mock<IModuleManager>(); var regionAdapterMappings = new RegionAdapterMappings(); var serviceLocatorAdapter = new UnityServiceLocatorAdapter(mockedContainer.Object); var regionBehaviorFactory = new RegionBehaviorFactory(serviceLocatorAdapter); mockedContainer.Setup(c => c.Resolve(typeof(IServiceLocator), (string)null)).Returns(serviceLocatorAdapter); mockedContainer.Setup(c => c.RegisterInstance(It.IsAny<Type>(), It.IsAny<string>(), It.IsAny<object>(), It.IsAny<LifetimeManager>())); mockedContainer.Setup(c => c.Resolve(typeof(UnityBootstrapperExtension), (string)null)).Returns( new UnityBootstrapperExtension()); mockedContainer.Setup(c => c.Resolve(typeof(IModuleCatalog), (string)null)).Returns( new ModuleCatalog()); mockedContainer.Setup(c => c.Resolve(typeof(IModuleInitializer), (string)null)).Returns( mockedModuleInitializer); mockedContainer.Setup(c => c.Resolve(typeof(IModuleManager), (string)null)).Returns( mockedModuleManager.Object); mockedContainer.Setup(c => c.Resolve(typeof(RegionAdapterMappings), (string)null)).Returns( regionAdapterMappings); #if SILVERLIGHT mockedContainer.Setup(c => c.Resolve(typeof(TabControlRegionAdapter), (string)null)).Returns( new TabControlRegionAdapter(regionBehaviorFactory)); #endif mockedContainer.Setup(c => c.Resolve(typeof(SelectorRegionAdapter), (string)null)).Returns( new SelectorRegionAdapter(regionBehaviorFactory)); mockedContainer.Setup(c => c.Resolve(typeof(ItemsControlRegionAdapter), (string)null)).Returns( new ItemsControlRegionAdapter(regionBehaviorFactory)); mockedContainer.Setup(c => c.Resolve(typeof(ContentControlRegionAdapter), (string)null)).Returns( new ContentControlRegionAdapter(regionBehaviorFactory)); }
public void ModuleManagerRunCalled() { // Have to use a non-mocked container because of IsRegistered<> extension method, Registrations property,and ContainerRegistration var container = new UnityContainer(); var mockedModuleInitializer = new Mock<IModuleInitializer>(); var mockedModuleManager = new Mock<IModuleManager>(); var regionAdapterMappings = new RegionAdapterMappings(); var serviceLocatorAdapter = new UnityServiceLocatorAdapter(container); var regionBehaviorFactory = new RegionBehaviorFactory(serviceLocatorAdapter); container.RegisterInstance<IServiceLocator>(serviceLocatorAdapter); container.RegisterInstance<UnityBootstrapperExtension>(new UnityBootstrapperExtension()); container.RegisterInstance<IModuleCatalog>(new ModuleCatalog()); container.RegisterInstance<IModuleInitializer>(mockedModuleInitializer.Object); container.RegisterInstance<IModuleManager>(mockedModuleManager.Object); container.RegisterInstance<RegionAdapterMappings>(regionAdapterMappings); container.RegisterInstance<SelectorRegionAdapter>(new SelectorRegionAdapter(regionBehaviorFactory)); container.RegisterInstance<ItemsControlRegionAdapter>(new ItemsControlRegionAdapter(regionBehaviorFactory)); container.RegisterInstance<ContentControlRegionAdapter>(new ContentControlRegionAdapter(regionBehaviorFactory)); var bootstrapper = new MockedContainerBootstrapper(container); bootstrapper.Run(); mockedModuleManager.Verify(mm => mm.Run(), Times.Once()); }