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(); } }
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()); }
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(); } }