Esempio n. 1
0
        public void CommitTransaction_AccountNotFound_ThrowsArgumentException()
        {
            //Arrange
            var builder = new TransactionServiceBuilder();
            var repo    = builder.DefaultRepository();

            repo.Setup(g => g.GetAccount(It.IsAny <string>())).Returns((Account)null);
            var service     = builder.WithRespository(repo.Object).Build();
            var transaction = new TransactionInfo {
                AccountNumber = "bad"
            };

            //Act
            Action action = () => service.CommitTransaction(transaction);

            //Assert
            action.Should().Throw <ArgumentException>();
        }
Esempio n. 2
0
        public void CommitTransaction_OnSuccess_ReturnsTransactionId()
        {
            //Arrange
            var builder         = new TransactionServiceBuilder();
            var transactionInfo = GetTestableTransactionInfo();
            var expectedId      = 5;
            var repo            = builder.DefaultRepository();

            repo.Setup(x => x.GetAccount(It.IsAny <string>()))
            .Returns(new Account());
            repo.Setup(t => t.AddTransaction(It.IsAny <Transaction>()))
            .Returns(expectedId);
            var service = builder.WithRespository(repo.Object).Build();
            //Act
            var resultId = service.CommitTransaction(transactionInfo);

            //Assert
            resultId.Should().Be(expectedId);
        }