public void ShouldReturnWithoutAnError_WhenSafeDisposeIsCalled_AndTheObjectIsNull() { // ARRANGE // ACT MyDisposable.SafeDispose(null); // ASSERT // Great if no exception was thrown. }
public async Task ShouldDisposeOfAnObject_WhenSafeDisposeAsyncIsCalled_AndTheObjectIsIDisposable() { // ARRANGE var disposable = new MyDisposable(base.Logger); // ACT await MyAsyncDisposable.SafeDisposeAsync(disposable).ConfigureAwait(false); // ASSERT LogAssert.IsTrue("Is Disposed", disposable.IsDisposed); }
public void ShouldNotDisposeAnIAsyncDisposableObject_WhenSafeDisposeIsCalled() { // ARRANGE var disposable = new MyAsyncOnlyDisposable(base.Logger); // ACT MyDisposable.SafeDispose(disposable); // ASSERT LogAssert.IsFalse("Is Disposed", disposable.IsDisposed); }
public void ShouldDisposeOfAnObject_WhenSafeDisposeIsCalled_AndTheObjectIsIDisposable() { // ARRANGE var disposable = new MyDisposable(base.Logger); // ACT MyDisposable.SafeDispose(disposable); // ASSERT LogAssert.IsTrue("Is Disposed", disposable.IsDisposed); }
public void ShouldPerformLifecycleOfOverridableMethods() { // ARRANGE var disposable = new MyDisposable(base.Logger); LogAssert.IsFalse("IsDisposed", disposable.IsDisposed); LogAssert.AreEqual("OnDisposing Call Position", 0, disposable.OnDisposingCallPosition); LogAssert.AreEqual("DisposeManagedResources Call Position", 0, disposable.DisposeManagedResourcesCallPosition); LogAssert.AreEqual("DisposeUnmanagedResources Call Position", 0, disposable.DisposeUnmanagedResourcesCallPosition); LogAssert.AreEqual("SetResourcesToNull Call Position", 0, disposable.SetResourcesToNullCallPosition); LogAssert.AreEqual("OnDisposed Call Position", 0, disposable.OnDisposedCallPosition); // ACT disposable.Dispose(); // ASSERT LogAssert.IsTrue("IsDisposed", disposable.IsDisposed); LogAssert.AreEqual("OnDisposing Call Position", 1, disposable.OnDisposingCallPosition); LogAssert.AreEqual("DisposeManagedResources Call Position", 2, disposable.DisposeManagedResourcesCallPosition); LogAssert.AreEqual("DisposeUnmanagedResources Call Position", 3, disposable.DisposeUnmanagedResourcesCallPosition); LogAssert.AreEqual("SetResourcesToNull Call Position", 4, disposable.SetResourcesToNullCallPosition); LogAssert.AreEqual("OnDisposed Call Position", 5, disposable.OnDisposedCallPosition); }