public void Commit_WillCallSaveChangesOnce() { // Arrange var mockConnection = new Mock <IDbConnection>(); var mockTransaction = new Mock <IDbTransaction>(); var mockConnectionFactory = new Mock <IConnectionFactory>(); mockConnection.Setup(mc => mc.BeginTransaction()).Returns(mockTransaction.Object); mockConnectionFactory.Setup(cf => cf.Connection).Returns(mockConnection.Object); var dapperUnitOfWork = new DapperUnitOfWork(mockConnectionFactory.Object); // Act dapperUnitOfWork.BeginTransaction(); dapperUnitOfWork.Commit(); //// Assert mockTransaction.Verify(x => x.Commit(), Times.Once); }
private double RunDapperRepositoryReadMethod(int readsCount) { using (var uow = new DapperUnitOfWork()) { uow.BeginTransaction(IsolationLevel.ReadUncommitted); var sw = new Stopwatch(); sw.Start(); for (var i = 0; i < readsCount; i++) { var entity = uow.WarehouseRepository.ReadOne(1); } sw.Stop(); var averageTime = (double)sw.ElapsedMilliseconds / ReadSampleSize; return(averageTime); } }
private double RunDapperRepositoryWriteMethod(List <Warehouse> warehousesToInsert) { using (var uow = new DapperUnitOfWork()) { uow.BeginTransaction(IsolationLevel.ReadUncommitted); var sw = new Stopwatch(); sw.Start(); foreach (var warehouse in warehousesToInsert) { uow.WarehouseRepository.Create(warehouse); } sw.Stop(); uow.RollbackTransaction(); var averageTime = (double)sw.ElapsedMilliseconds / WriteSampleSize; return(averageTime); } }