public void Dispose_Clears_Current_UnitOfWork() { // Arrange var uow = new UnitOfWork(_session, _transaction); UnitOfWorkFactory.SetGlobalUnitOfWork(uow); Assert.IsNotNull(UnitOfWorkFactory.CurrentUnitOfWork); // Act uow.Dispose(); // Assert try { Assert.IsNull(UnitOfWorkFactory.CurrentUnitOfWork); } catch (InvalidOperationException) { // Should exception as CurrentUnitOfWork is null. } }
public void Dispose_Disposes_Current_Transaction() { // Arrange var uow = new UnitOfWork(_session, _transaction); // Act uow.Dispose(); // Assert _transaction.AssertWasCalled(trans => trans.Dispose()); }
public void Dispose_Closes_And_Disposes_Current_Session() { // Arrange var uow = new UnitOfWork(_session, _transaction); // Act uow.Dispose(); // Assert _session.AssertWasCalled(sess => sess.Close()); _session.AssertWasCalled(sess => sess.Dispose()); }