public void Commit_ThrowsInvalidOperationException_WhenNoTransactionIsOpened() { //Arrange var configuration = fixture.Create <PostgresConfiguration>(); var unitOfWork = new PostgresReadModelUnitOfWork(configuration, connectionFactory); //Act Action action = (() => unitOfWork.Commit()); //Assert Assert.Throws <InvalidOperationException>(action); }
public void BeginTransaction_CreatesATransaction() { //Arrange var configuration = fixture.Create <PostgresConfiguration>(); var unitOfWork = new PostgresReadModelUnitOfWork(configuration, connectionFactory); //Act unitOfWork.BeginTransaction(); //Assert connection.Received(1).BeginTransaction(); }
public void Constructor_OpensConnection_And_SetsUpRepository() { //Arrange var configuration = fixture.Create <PostgresConfiguration>(); //Act var unitOfWork = new PostgresReadModelUnitOfWork(configuration, connectionFactory); //Assert unitOfWork.UserRepository.Should().NotBeNull(); connection.Received(1).Open(); }
public void Commit_CommitsAndDisposes_Transaction() { //Arrange var configuration = fixture.Create <PostgresConfiguration>(); var unitOfWork = new PostgresReadModelUnitOfWork(configuration, connectionFactory); //Act unitOfWork.BeginTransaction(); unitOfWork.Commit(); //Assert transaction.Received(1).Commit(); transaction.Received(1).Dispose(); }