コード例 #1
0
        public async Task When_SendMoney_And_NoCurrencyFound_Then_ShouldReturn_Exception()
        {
            var      fixture      = new Fixture();
            var      userId       = 0;
            var      sendMoneyDto = new SendMoneyRequestDto(0, null, 0, 0);
            var      user         = fixture.Build <User>().With(x => x.Balances, new List <Balance>()).Create();
            Currency currency     = null;

            try
            {
                _userRepositoryMock.Setup(x => x.GetAsync(userId)).Returns(Task.FromResult(user));
                _currencyRepository.Setup(x => x.GetAsync(sendMoneyDto.CurrencyName))
                .Returns(Task.FromResult(currency));

                var moneyExchangeService =
                    new MoneyExchangeAppService(_userRepositoryMock.Object, _currencyRepository.Object);

                await moneyExchangeService.SendMoney(sendMoneyDto);

                Assert.Fail();
            }
            catch (Exception e)
            {
                Assert.Pass();
            }
        }
コード例 #2
0
        public async Task When_GetBalance_Then_ShouldReturn_Dictionary()
        {
            var fixture = new Fixture();

            var userId = fixture.Create <int>();

            var user = fixture.Build <User>().With(x => x.Balances, new List <Balance>()).Create();

            _userRepositoryMock.Setup(x => x.GetAsync(userId)).Returns(Task.FromResult(user));

            var moneyExchangeService =
                new MoneyExchangeAppService(_userRepositoryMock.Object, _currencyRepository.Object);

            var result = await moneyExchangeService.GetBalanceAsync(userId);

            Assert.AreEqual(typeof(Dictionary <string, decimal>), result.GetType());
        }
コード例 #3
0
        public async Task When_AddMoney_And_NoUserFound_Then_ShouldReturn_Exception()
        {
            var  userId       = 0;
            var  moneyRequest = new MoneyRequesDto();
            User user         = null;

            try
            {
                _userRepositoryMock.Setup(x => x.GetAsync(userId)).Returns(Task.FromResult(user));

                var moneyExchangeService =
                    new MoneyExchangeAppService(_userRepositoryMock.Object, _currencyRepository.Object);

                await moneyExchangeService.AddMoney(moneyRequest);

                Assert.Fail();
            }
            catch (Exception e)
            {
                Assert.Pass();
            }
        }