public void GetPlugInFromCustomContainerWithAllImplementedInterfaces() { var manager = new PlugInManager(null, new NullLoggerFactory(), null); var container = new CustomTestPlugInContainer(manager); container.AddPlugIn(new TestCustomPlugIn2(), true); Assert.That(container.GetPlugIn <ITestCustomPlugIn>(), Is.Not.Null); Assert.That(container.GetPlugIn <IAnotherCustomPlugIn>(), Is.Not.Null); }
public void GetPlugInFromCustomContainerWithInitiallyRegisteredPlugIn() { var manager = new PlugInManager(null, new NullLoggerFactory(), null); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn>(); var container = new CustomTestPlugInContainer(manager); var plugIn = container.GetPlugIn <ITestCustomPlugIn>(); Assert.That(plugIn, Is.Not.Null); }
public void DontGetPlugInFromCustomContainerIfItDoesntSuit() { var manager = new PlugInManager(null, new NullLoggerFactory(), null); var container = new CustomTestPlugInContainer(manager); container.CreateNewPlugIns = false; manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn>(); var plugIn = container.GetPlugIn <ITestCustomPlugIn>(); Assert.That(plugIn, Is.Null); }
public void GetPlugInFromCustomContainerWithRegisteredPlugInAfterRegistration() { var manager = new PlugInManager(); var container = new CustomTestPlugInContainer(manager); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn>(); var plugIn = container.GetPlugIn <ITestCustomPlugIn>(); Assert.That(plugIn, Is.Not.Null); }
public void DontGetPlugInFromCustomContainerAfterDeactivation() { var manager = new PlugInManager(null, new NullLoggerFactory(), null); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn>(); var container = new CustomTestPlugInContainer(manager); manager.DeactivatePlugIn <TestCustomPlugIn>(); var plugIn = container.GetPlugIn <ITestCustomPlugIn>(); Assert.That(plugIn, Is.Null); }
public void ReplacePlugInAtCustomContainer() { var manager = new PlugInManager(null, new NullLoggerFactory(), null); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn>(); var container = new CustomTestPlugInContainer(manager); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn2>(); var plugIn = container.GetPlugIn <ITestCustomPlugIn>(); Assert.That(plugIn, Is.InstanceOf <TestCustomPlugIn2>()); }
public void ReactivatePlugInAtCustomContainer() { var manager = new PlugInManager(); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn>(); var container = new CustomTestPlugInContainer(manager); manager.RegisterPlugIn <ITestCustomPlugIn, TestCustomPlugIn2>(); manager.DeactivatePlugIn <TestCustomPlugIn2>(); var plugIn = container.GetPlugIn <ITestCustomPlugIn>(); Assert.That(plugIn, Is.InstanceOf <TestCustomPlugIn>()); }