public async void ExtremeServicesTests_Get_Local_Extreme_Should_Return_MinValue_3_MaxValue_6_GBP()
        {
            //Arrange
            bool result = false;
            ICurrencyRepository    repository       = CreateICurrencyRepositoryMoq();
            ExtremesServices       extremesServices = CreateExtremeServices(repository);
            LocalExtremeValueModel resultModel      = new LocalExtremeValueModel {
                NameCurrency = _firstCurrencyName,
                StartDate    = new DateTime(_startYear, _startMonth, _startDay + 1),
                EndDate      = new DateTime(_startYear, _startMonth, _startDay + 2)
            };
            LocalExtremeValueModel expectedModel = new LocalExtremeValueModel
            {
                NameCurrency = _firstCurrencyName,
                MinValue     = 3,
                MaxValue     = 6
            };

            //Act
            resultModel = await extremesServices.GetLocalExtremes(resultModel);

            if (resultModel.NameCurrency == expectedModel.NameCurrency && resultModel.MinValue == expectedModel.MinValue &&
                resultModel.MaxValue == expectedModel.MaxValue)
            {
                result = true;
            }

            //Assert
            Assert.True(result);
        }
Exemplo n.º 2
0
        public async Task <LocalExtremeValueModel> GetLocalExtremes(LocalExtremeValueModel extremeValue)
        {
            List <CurrencyRecord> listOfRecords = await GetCurrencyList(extremeValue.NameCurrency);

            extremeValue.MaxValue = listOfRecords.Where
                                        (c => c.Date >= extremeValue.StartDate && c.Date <= extremeValue.EndDate)
                                    .Max(c => c.High);
            extremeValue.MinValue = listOfRecords.Where
                                        (c => c.Date >= extremeValue.StartDate && c.Date <= extremeValue.EndDate)
                                    .Min(c => c.Low);
            return(extremeValue);
        }
Exemplo n.º 3
0
        public IActionResult ShowLocalExtreme(LocalExtremeValueModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View("FormOfLocalExtreme", model));
            }
            if (!_dateChecker.CheckingIfDateExists(model.EndDate, model.NameCurrency) ||
                !_dateChecker.CheckingIfDateExists(model.StartDate, model.NameCurrency))
            {
                ViewBag.DateRangeForLocalExtreme = _dateRange.GetDateRangeCurrency(model.NameCurrency);

                return(View("FormOfLocalExtreme", model));
            }
            return(View(_extremeServices.GetLocalExtremes(model)));
        }
        public async Task <IActionResult> ShowLocalExtreme(LocalExtremeValueModel model)
        {
            ViewData["currencyCodes"] = await _currenciesSelectList.GetCurrencyCodes(User.Identity.Name);

            if (!ModelState.IsValid)
            {
                return(View("FormOfLocalExtreme", model));
            }
            if (!await _dateChecker.CheckIfDateExistInRange(model.StartDate, model.EndDate, model.NameCurrency))
            {
                ViewBag.DateRangeForLocalExtreme = await _dateRange.GetCurrencyDateRange(model.NameCurrency);

                return(View("FormOfLocalExtreme", model));
            }
            return(View(await _extremeServices.GetLocalExtremes(model)));
        }