public void MultipleResolvedInstanceDisposeOnlyOnce() { var o1 = container.Resolve <DisposableObject>(); var o2 = container.Resolve <DisposableObject>(); container.Dispose(); Assert.IsTrue(o1.WasDisposed); Assert.IsTrue(o2.WasDisposed); Assert.AreEqual(o1.DisposeCount, 1); Assert.AreEqual(o2.DisposeCount, 1); }
public void TestMultipleResolvedInstanceDisposeOnlyOnce() { // Arrange var container = new FsContainer(); container .For <DisposableObject>() .Use <DisposableObject>(new ContainerControlledLifetimeManager()); // Act var o1 = container.Resolve <DisposableObject>(); var o2 = container.Resolve <DisposableObject>(); // Assert container.Dispose(); Assert.IsTrue(o1.WasDisposed); Assert.IsTrue(o2.WasDisposed); Assert.AreEqual(o1.DisposeCount, 1); Assert.AreEqual(o2.DisposeCount, 1); }