public void ConvertSum_DateFromFuture_ExceptionThrown() { var client = new Mock <IBankGovUaClient>(); UahCurrencyRateService service = new UahCurrencyRateService(client.Object); Assert.ThrowsAsync <ArgumentOutOfRangeException>(() => service.ConvertSum(10, DateTime.MaxValue)); }
public void ConvertSum_SumIsLessOrEqualZero_ExceptionThrown(decimal sum) { var client = new Mock <IBankGovUaClient>(); UahCurrencyRateService service = new UahCurrencyRateService(client.Object); Assert.ThrowsAsync <ArgumentOutOfRangeException>(() => service.ConvertSum(sum, DateTime.Now)); }
public void GetRate_EmptyResponse_ExceptionThrown() { var client = new Mock <IBankGovUaClient>(); List <BankGovUaRateResponse> response = new List <BankGovUaRateResponse>(); client.Setup(p => p.Exchange(It.IsAny <DateTime>())).ReturnsAsync(response); UahCurrencyRateService service = new UahCurrencyRateService(client.Object); Assert.ThrowsAsync <Exception>(() => service.GetRate(DateTime.Now)); }
public async void ConvertSum_CorrectInput_ReturnResult(DateTime date, List <BankGovUaRateResponse> response) { var client = new Mock <IBankGovUaClient>(); client.Setup(p => p.Exchange(It.IsAny <DateTime>())).ReturnsAsync(response); UahCurrencyRateService service = new UahCurrencyRateService(client.Object); decimal expected = 25.34M; decimal actual = await service.ConvertSum(1000, date); Assert.Equal(expected, actual, 3); }