public void CreateSaveAndHoldValidSavepoint() { ISavepointManager saveMgr = MockRepository.GenerateMock <ISavepointManager>(); DefaultTransactionStatus status = new DefaultTransactionStatus(saveMgr, true, false, false, true, new object()); status.CreateAndHoldSavepoint("savepoint"); Assert.IsTrue(status.HasSavepoint); Assert.AreEqual("savepoint", status.Savepoint); }
public void RollbackHeldSavepointSuccess() { ISavepointManager saveMgr = MockRepository.GenerateMock <ISavepointManager>(); string savepoint = "savepoint"; DefaultTransactionStatus status = new DefaultTransactionStatus(saveMgr, true, false, false, true, new object()); status.CreateAndHoldSavepoint(savepoint); Assert.IsTrue(status.HasSavepoint); Assert.AreEqual(savepoint, status.Savepoint); status.RollbackToHeldSavepoint(); saveMgr.AssertWasCalled(x => x.RollbackToSavepoint(savepoint)); }
public void RollbackHeldSavepointSuccess() { ISavepointManager saveMgr = A.Fake <ISavepointManager>(); string savepoint = "savepoint"; DefaultTransactionStatus status = new DefaultTransactionStatus(saveMgr, true, false, false, true, new object()); status.CreateAndHoldSavepoint(savepoint); Assert.IsTrue(status.HasSavepoint); Assert.AreEqual(savepoint, status.Savepoint); status.RollbackToHeldSavepoint(); A.CallTo(() => saveMgr.RollbackToSavepoint(savepoint)).MustHaveHappened(); }
public void NestedTransactionWithSavepoint() { MockTxnDefinition def = new MockTxnDefinition(); def.PropagationBehavior = TransactionPropagation.Nested; def.ReadOnly = false; ISavepointManager saveMgr = MockRepository.GenerateMock <ISavepointManager>(); _mockTxnMgr.SetTransaction(saveMgr); _mockTxnMgr.Savepoints = true; _mockTxnMgr.NestedTransactionsAllowed = true; DefaultTransactionStatus status = (DefaultTransactionStatus)_mockTxnMgr.GetTransaction(def); Assert.AreEqual(_mockTxnMgr.Transaction, status.Transaction); Assert.IsFalse(status.IsNewTransaction); Assert.IsFalse(status.NewSynchronization); Assert.IsTrue(!status.ReadOnly); Assert.IsNull(status.SuspendedResources); AssertVanillaGetTransactionExpectations(); Assert.AreEqual(0, _mockTxnMgr.DoBeginCallCount); }