public void ContainerCallsExtensionsInitializeMethod() { MockContainerExtension extension = new MockContainerExtension(); IUnityContainer container = new UnityContainer(); container.AddExtension(extension); Assert.IsTrue(extension.InitializeWasCalled); }
public void ExtensionReceivesExtensionContextInInitialize() { MockContainerExtension extension = new MockContainerExtension(); IUnityContainer container = new UnityContainer(); container.AddExtension(extension); Assert.IsNotNull(extension.Context); Assert.AreSame(container, extension.Context.Container); }
public void CanLookupExtensionByClassName() { MockContainerExtension extension = new MockContainerExtension(); IUnityContainer container = new UnityContainer(); container.AddExtension(extension); MockContainerExtension result = container.Configure<MockContainerExtension>(); Assert.AreSame(extension, result); }
public void CanGetConfigurationWithoutGenericMethod() { MockContainerExtension extension = new MockContainerExtension(); IUnityContainer container = new UnityContainer() .AddExtension(extension); IMockConfiguration config = (IMockConfiguration)container.Configure(typeof(IMockConfiguration)); Assert.AreSame(extension, config); Assert.AreSame(container, config.Container); }
public void CanGetConfigurationInterfaceFromExtension() { MockContainerExtension extension = new MockContainerExtension(); IUnityContainer container = new UnityContainer() .AddExtension(extension); IMockConfiguration config = container.Configure<IMockConfiguration>(); Assert.AreSame(extension, config); Assert.AreSame(container, config.Container); }
public void ChildContainerCreatedEventGivesChildContainerToExtension() { var mockExtension = new MockContainerExtension(); ExtensionContext childContext = null; var container = new UnityContainer() .AddExtension(mockExtension); mockExtension.Context.ChildContainerCreated += (sender, ev) => { childContext = ev.ChildContext; }; var child = container.CreateChildContainer(); Assert.AreSame(child, childContext.Container); }
public void ContainerRaisesChildContainerCreatedToExtension() { bool childContainerEventRaised = false; var mockExtension = new MockContainerExtension(); var container = new UnityContainer() .AddExtension(mockExtension); mockExtension.Context.ChildContainerCreated += (sender, ev) => { childContainerEventRaised = true; }; var child = container.CreateChildContainer(); Assert.IsTrue(childContainerEventRaised); }