public void TestContainedTwoObjectInAContextAndOneOutside() { DisposableComponent tran1; DisposableComponent tran2; DisposableComponent tran3; using (WindsorContainer ioc = new WindsorContainer(new XmlInterpreter(@"Concrete\Castle\Config\ConfigurationCustom.xml"))) { using (ContextLifecycle.BeginContext()) { tran1 = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); tran2 = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); } tran3 = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); //Tran3 does not gets disposed because it is created out of the context. Assert.IsTrue(tran1.ITest.IsDisposed); Assert.IsTrue(tran2.ITest.IsDisposed); Assert.IsFalse(tran3.ITest.IsDisposed); Assert.IsTrue(tran1.IsDisposed); Assert.IsTrue(tran2.IsDisposed); Assert.IsFalse(tran3.IsDisposed); } Assert.IsTrue(tran3.ITest.IsDisposed); Assert.IsTrue(tran3.IsDisposed); }
public void TestContainedThreeObjectInAContext() { DisposableComponent tran1; DisposableComponent tran2; DisposableComponent tran3; using (WindsorContainer ioc = new WindsorContainer(new XmlInterpreter(@"Concrete\Castle\Config\ConfigurationCustom.xml"))) { using (ContextLifecycle.BeginContext()) { tran1 = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); tran2 = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); tran3 = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); Assert.That(tran1, Is.Not.EqualTo(tran2)); Assert.That(tran3, Is.Not.EqualTo(tran2)); Assert.That(tran3, Is.Not.EqualTo(tran1)); } Assert.IsTrue(tran1.ITest.IsDisposed); Assert.IsTrue(tran2.ITest.IsDisposed); Assert.IsTrue(tran3.ITest.IsDisposed); Assert.IsTrue(tran1.IsDisposed); Assert.IsTrue(tran2.IsDisposed); Assert.IsTrue(tran3.IsDisposed); } }
public void TestContained4a() { DisposableComponent tran; using (WindsorContainer ioc = new WindsorContainer(new XmlInterpreter(@"Concrete\Castle\Config\ConfigurationCustom.xml"))) { using (ContextLifecycle.BeginContext()) { tran = ioc.Resolve <DisposableComponent>("TransientDisposableCon"); } Assert.IsTrue(tran.ITest.IsDisposed); Assert.IsTrue(tran.IsDisposed); } }
public void BaseTestSingletonContextDisposable2() { DisposableComponent tran1, tran2; using (WindsorContainer ioc = new WindsorContainer(new XmlInterpreter(@"Concrete\Castle\Config\ConfigurationCustom.xml"))) { using (ContextLifecycle.BeginContext()) { tran1 = ioc.Resolve <DisposableComponent>("SingletonDisposableCon"); tran2 = ioc.Resolve <DisposableComponent>("SingletonDisposableCon"); Assert.That(tran1, Is.EqualTo(tran2)); Assert.That(tran1.ITest, Is.EqualTo(tran2.ITest)); } } }
public void TestSingletonThatDependsFromCustom() { NotDisposableComponent tran; using (WindsorContainer ioc = new WindsorContainer(new XmlInterpreter(@"Concrete\Castle\Config\ConfigurationCustom.xml"))) { using (ContextLifecycle.BeginContext()) { tran = ioc.Resolve <NotDisposableComponent>("NotDisposableSingleton"); } //Now the singleton object tran ended is life, it does not implement dispose but the inner ITEst object should //gets disposed. Assert.IsTrue(tran.ITest.IsDisposed); } }
public void TestContextLifecycle() { RegressionRunner.Run(session, ContextLifecycle.Executions()); }