Example #1
0
        public void Setup()
        {
            _accountRepositoryMock = new Mock <IAccountRepository>();
            _accountRepositoryMock
            .Setup(ar => ar.GetByCardNumber("123"))
            .Returns(new Account()
            {
                Id         = 1,
                CardNumber = "123",
                Pin        = "8888",
            });

            _accountBalanceManagerMock = new Mock <IAccountBalanceManager>();
            _accountBalanceManagerMock
            .Setup(abm => abm.IsBalanceAvailable(1, It.IsAny <decimal>()))
            .Returns(true);
            _accountBalanceManagerMock
            .Setup(abm => abm.CheckAndReserveAmount(1, It.IsAny <decimal>()))
            .Returns(new AccountBalanceTransaction()
            {
                Id = 567,
            });

            sut = new CashCardService(_accountRepositoryMock.Object, _accountBalanceManagerMock.Object);
        }
 public CashCardServiceShould()
 {
     _pinServiceMock         = new Mock <IPinService>();
     _cardBalanceServiceMock = new Mock <ICardBalanceService>();
     _transactionManagerMock = new Mock <ITransactionManager>();
     _cashCardService        = new CashCardService(_pinServiceMock.Object, _cardBalanceServiceMock.Object, _transactionManagerMock.Object);
 }
Example #3
0
        public void IsPinValid_InvalidPin_ReturnsFalse()
        {
            //Arrange
            var      mockCashCardRepository = new Mock <ICashCardRepository>();
            CashCard cashCard = new CashCard()
            {
                Id = "2", Pin = "1234"
            };

            mockCashCardRepository
            .Setup(x => x.GetPin(cashCard.Id))
            .Returns("DifferentPinInRepo");

            ICashCardService cashCardService = new CashCardService(mockCashCardRepository.Object);

            //Act
            var isPinValid = cashCardService.IsPinValid(cashCard);

            //Assert
            Assert.IsFalse(isPinValid);
        }
Example #4
0
        public void IsPinValid_NoAccountFound_ReturnsFalse()
        {
            //Arrange
            var      mockCashCardRepository = new Mock <ICashCardRepository>();
            CashCard cashCard = new CashCard()
            {
                Id = "2", Pin = "1234"
            };
            String returnedPin = null;

            mockCashCardRepository
            .Setup(x => x.GetPin(cashCard.Id))
            .Returns(returnedPin);

            ICashCardService cashCardService = new CashCardService(mockCashCardRepository.Object);

            //Act
            var isPinValid = cashCardService.IsPinValid(cashCard);

            //Assert
            Assert.IsFalse(isPinValid);
        }