Esempio n. 1
0
        public async Task CalculateRates_WhenCurrencyDoesntExist_ReturnException()
        {
            //arrange
            _rateLogic = new RateLogic(MockHelper.GetDataLoadLogicWithMocks());
            var request = new CalculateRatesInputModel
            {
                FirstCurrency  = "USD",
                SecondCurrency = "AAA",
                Value          = 10
            };

            // assert
            await Assert.ThrowsAsync <CurrencyNotFoundException>(() => _rateLogic.CalculateRates(request));
        }
Esempio n. 2
0
        public async Task CalculateRates_WhenDataValid_ReturnRateObject()
        {
            //arrange
            _rateLogic = new RateLogic(MockHelper.GetDataLoadLogicWithMocks());
            var request = new CalculateRatesInputModel
            {
                FirstCurrency  = "USD",
                SecondCurrency = "JPY",
                Value          = 10
            };

            // act
            var result = await _rateLogic.CalculateRates(request);

            // assert
            Assert.Equal(request.FirstCurrency, result.FirtsCurrency);
            Assert.Equal(request.SecondCurrency, result.SecondCurrency);
            Assert.Equal(request.Value, result.Amount);
            Assert.Equal((decimal)1050.59, result.RateValue);
            Assert.Equal((decimal)105.0595, result.Rate);
        }