public CurrencyConversionController(ILoader loader) { _currencyConversionService = new CurrencyConversionService(loader); _dateChecker = new DateChecker(); _dateRange = new DateRange(loader); _currencyNameChecker = new CurrencyNameChecker(); }
public void ConvertCurrencyToTextServiceTest() { var service = new CurrencyConversionService(); var convertedText1 = service.ConvertCurrencyToText(-1000000000); var convertedText2 = service.ConvertCurrencyToText(1000000000); Assert.Equal($"Cannot convert this number as it exceeds the maximal allowed value of {999999999.99M}", convertedText1); Assert.Equal($"Cannot convert this number as it exceeds the maximal allowed value of {999999999.99M}", convertedText2); }
public ConvertViewModel() { FetchCommand = new Command(async() => await FetchCurrencies()); ConversionService = new CurrencyConversionService(); CurrencyProviders = new List <ICurrencyProvider> { new FakeCurrencyProvider(), new NbpCurrencyProvider(NbpTable.A), new NbpCurrencyProvider(NbpTable.B) }; }
public App() { InitializeComponent(); ICurrencyConversionService conversionService = new CurrencyConversionService(); IList <ICurrencyProvider> providers = new List <ICurrencyProvider> { new FakeCurrencyProvider(), new NbpCurrencyProvider(NbpTable.A), new NbpCurrencyProvider(NbpTable.B) }; var mainPage = new TabbedPage(); mainPage.Children.Add(new ConvertPage(new ConvertViewModel(conversionService, providers))); mainPage.Children.Add(new AboutPage(new AboutViewModel("kkulewski.pl", "github.com/kkulewski"))); MainPage = mainPage; }
public async Task Given_CurrencyRate_When_ConvertingFromEurToSek_Then_ConvertedAmountIsCorrect() { //Arrange var currencyService = new Mock <ICurrencyService>(); var currencyRate = 10.3183M; currencyService.Setup(p => p.GetCurrencyRate(It.IsAny <CurrencyConversion>())).ReturnsAsync(currencyRate); var currencyConversionService = new CurrencyConversionService(currencyService.Object); var currencyConversion = new CurrencyConversion() { OutputCurrency = Currency.SEK, InputCurrency = Currency.EUR, Amount = 100, ExchangeRateDate = new DateTime(2020, 08, 19) }; //Act currencyConversion = await currencyConversionService.Convert(currencyConversion); //Assert Assert.AreEqual(1031.83M, decimal.Round(currencyConversion.ConvertedAmount, 2)); }
public async void CurrencyConversionService_is_conversion_correct() { //Arange CurrencyConversionService testService = CreateCurrencyConversionService(); CurrencyConversionModel currencyConversionModel = new CurrencyConversionModel(); currencyConversionModel.FirstCurrency = _firstCurrencyName; currencyConversionModel.SecondCurrency = _secondCurrencyName; currencyConversionModel.AmountFirstCurrency = 10; currencyConversionModel.Date = _commonDate; float expectedResult = currencyConversionModel.AmountFirstCurrency * _firstCurrencyCloseValue / _secondCurrencyCloseValue; bool resultFlag = false; //Act currencyConversionModel = await testService.CalculateCurrencyConversionAmount(currencyConversionModel); if (currencyConversionModel.AmountSecondCurrency == expectedResult) { resultFlag = true; } //Asert Assert.True(resultFlag); }
public CurrencyConversionServiceShould() { _exchangeRateServiceMock = new Mock <IExchangeRateService>(); currencyConversionService = new CurrencyConversionService(_exchangeRateServiceMock.Object); }