Esempio n. 1
0
        public void CapitalServiceReturnsMonthlyCapitalsForNoStrategy()
        {
            List <Capital> capitalsForGivenStrategy = _capitalService.GetCapitalsByStrategy(new StrategiesRequestModel {
                Strategies = ""
            });

            List <Capital> expectedCapitalsForGivenStrategy = new List <Capital> {
                new Capital {
                    Strategy = "Strategy1", Date = DateTime.Parse("2017-01-01"), Value = 1000
                },
                new Capital {
                    Strategy = "Strategy1", Date = DateTime.Parse("2017-02-01"), Value = 2000
                },
                new Capital {
                    Strategy = "Strategy1", Date = DateTime.Parse("2017-03-01"), Value = 4000
                },
                new Capital {
                    Strategy = "Strategy2", Date = DateTime.Parse("2017-01-01"), Value = 3000
                },
                new Capital {
                    Strategy = "Strategy3", Date = DateTime.Parse("2017-01-01"), Value = 5000
                }
            };

            CollectionAssert.AreEquivalent(expectedCapitalsForGivenStrategy, capitalsForGivenStrategy);
        }
Esempio n. 2
0
        public IActionResult GetCapitalsForStrategies([FromQuery] StrategiesRequestModel strategiesModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var resultingCapitals = _capitalService.GetCapitalsByStrategy(strategiesModel)
                                    .Select(capital => new
            {
                strategy = capital.Strategy,
                date     = capital.Date.ToString("yyyy-MM-dd"),
                capital  = capital.Value
            });

            return(Ok(resultingCapitals));
        }