Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
            }
        }
Esempio n. 3
0
        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);
            }
        }