public void CommitTransactionWithoutBeginTransactionThrowsTransactionNotInstantiatedException() { var provider = new IProvider(); var transaction = new Mock<ITransaction>(); provider.CommandExecutor.Setup(c => c.InitiateTransaction()).Returns(transaction.Object); var target = new DataSession(provider.Object); try { target.CommitTransaction(); } catch (Exception ex) { Assert.IsTrue(ex is TransactionNotInstantiatedException); } }
public void CountAllWithTransactionInitiated() { var provider = new IProvider(); var command = new ICommand(); var schema = new TypeTable(typeof(Customer)); var transaction = new Mock<ITransaction>(); provider.Setup(p => p.GetSchema(typeof(Customer))).Returns(schema); provider.CommandBuilder.Setup(c => c.CreateCountCommand<Customer>()).Returns(command.Object); provider.CommandExecutor.Setup(c => c.InitiateTransaction()).Returns(transaction.Object); provider.CommandExecutor.Setup(c => c.ExecuteCount(command.Object, transaction.Object)).Returns(10); var target = new DataSession(provider.Object); target.BeginTransaction(); var result = target.Count<Customer>(); target.CommitTransaction(); Assert.IsTrue(result == 10); }
public void CommitTransactionCallsExecutorCommitTransaction() { var provider = new IProvider(); var transaction = new Mock<ITransaction>(); provider.CommandExecutor.Setup(c => c.InitiateTransaction()).Returns(transaction.Object); var target = new DataSession(provider.Object); target.BeginTransaction(); target.CommitTransaction(); provider.CommandExecutor.Verify(c => c.InitiateTransaction()); provider.CommandExecutor.Verify(c => c.CommitTransaction(transaction.Object)); }