public void Uses_interception() { var transactionMock = new Mock <DbTransaction>(); transactionMock.Protected().Setup <DbConnection>("DbConnection").Returns(new Mock <DbConnection>().Object); var transaction = new EntityTransaction(new EntityConnection(), transactionMock.Object); var transactionInterceptorMock = new Mock <IDbTransactionInterceptor>(); DbInterception.Add(transactionInterceptorMock.Object); try { transaction.Rollback(); } finally { DbInterception.Remove(transactionInterceptorMock.Object); } transactionInterceptorMock.Verify( m => m.RollingBack(It.IsAny <DbTransaction>(), It.IsAny <DbTransactionInterceptionContext>()), Times.Once()); transactionInterceptorMock.Verify( m => m.RolledBack(It.IsAny <DbTransaction>(), It.IsAny <DbTransactionInterceptionContext>()), Times.Once()); transactionMock.Verify(m => m.Rollback(), Times.Once()); }
public void Uses_interception() { var transactionMock = new Mock<DbTransaction>(); transactionMock.Protected().Setup<DbConnection>("DbConnection").Returns(new Mock<DbConnection>().Object); var transaction = new EntityTransaction(new EntityConnection(), transactionMock.Object); var transactionInterceptorMock = new Mock<IDbTransactionInterceptor>(); DbInterception.Add(transactionInterceptorMock.Object); try { transaction.Rollback(); } finally { DbInterception.Remove(transactionInterceptorMock.Object); } transactionInterceptorMock.Verify( m => m.RollingBack(It.IsAny<DbTransaction>(), It.IsAny<DbTransactionInterceptionContext>()), Times.Once()); transactionInterceptorMock.Verify( m => m.RolledBack(It.IsAny<DbTransaction>(), It.IsAny<DbTransactionInterceptionContext>()), Times.Once()); transactionMock.Verify(m => m.Rollback(), Times.Once()); }