public decimal CalculateExchangeRate(UserCurrencyInput userInput) { var result = userInput.ExchangeCurrencyFrom.Amount / userInput.ExchangeCurrencyTo.Amount * userInput.Amount; return(result); }
public void ExchangeRateCalculationService_GivenCurrencies_CalculateCorrectExchange(string currencyFrom, string currencyTo, int result) { //Arange var path = "C:\\Users\\kater\\Documents\\dot-net\\CurrencyExchangeRate\\CurrencyExchangeRate\\Data\\ExchangeRates.json"; FetchData fetchData = new FetchData(); var exchangeRates = fetchData.LoadJson(path); var currencyExchangeFrom = exchangeRates.Where(c => c.ISO == currencyFrom).FirstOrDefault(); var currencyExchangeTo = exchangeRates.Where(c => c.ISO == currencyTo).FirstOrDefault(); var amount = 2; var userInputObject = new UserCurrencyInput() { Amount = amount, ExchangeCurrencyFrom = currencyExchangeFrom, ExchangeCurrencyTo = currencyExchangeTo }; //Act var rateCalculation = new ExchangeRateCalculationService(); var rateResult = rateCalculation.CalculateExchangeRate(userInputObject); //Assert result.Should().Be(result); }