public void Rollback_executes_operation_and_dispatches_to_interceptors() { var transactionMock = new Mock <DbTransaction>(); transactionMock.Protected().Setup <DbConnection>("DbConnection").Returns(new Mock <DbConnection>().Object); var interceptorMock = new Mock <IDbTransactionInterceptor>(); var dispatcher = new DbTransactionDispatcher(); var internalDispatcher = dispatcher.InternalDispatcher; internalDispatcher.Add(interceptorMock.Object); var interceptionContext = new DbInterceptionContext(); dispatcher.Rollback(transactionMock.Object, interceptionContext); transactionMock.Verify(m => m.Rollback(), Times.Once()); interceptorMock.Verify(m => m.RollingBack(transactionMock.Object, It.IsAny <DbTransactionInterceptionContext>()), Times.Once()); interceptorMock.Verify(m => m.RolledBack(transactionMock.Object, It.IsAny <DbTransactionInterceptionContext>()), Times.Once()); }
public void Rollback_executes_operation_and_dispatches_to_interceptors() { var transactionMock = new Mock<DbTransaction>(); transactionMock.Protected().Setup<DbConnection>("DbConnection").Returns(new Mock<DbConnection>().Object); var interceptorMock = new Mock<IDbTransactionInterceptor>(); var dispatcher = new DbTransactionDispatcher(); var internalDispatcher = dispatcher.InternalDispatcher; internalDispatcher.Add(interceptorMock.Object); var interceptionContext = new DbInterceptionContext(); dispatcher.Rollback(transactionMock.Object, interceptionContext); transactionMock.Verify(m => m.Rollback(), Times.Once()); interceptorMock.Verify(m => m.RollingBack(transactionMock.Object, It.IsAny<DbTransactionInterceptionContext>()), Times.Once()); interceptorMock.Verify(m => m.RolledBack(transactionMock.Object, It.IsAny<DbTransactionInterceptionContext>()), Times.Once()); }