public void GetValueWeekly() { var dateRange = new DateRange(new Date(2000, 01, 01), new Date(2000, 01, 17)); var portfolio = PortfolioTestCreator.CreateDefaultPortfolio(); var service = new PortfolioValueService(portfolio, PortfolioTestCreator.TradingCalendar); var result = service.GetValue(dateRange, ValueFrequency.Week); result.Result.Should().BeEquivalentTo(new { Values = new[] { new ClosingPrice() { Date = new Date(2000, 01, 02), Price = 9960.10m }, new ClosingPrice() { Date = new Date(2000, 01, 09), Price = 9963.10m }, new ClosingPrice() { Date = new Date(2000, 01, 16), Price = 9975.10m }, new ClosingPrice() { Date = new Date(2000, 01, 17), Price = 9982.10m } } }); }
public void GetValueForStockWeekly() { var dateRange = new DateRange(new Date(2000, 01, 01), new Date(2000, 01, 17)); var portfolio = PortfolioTestCreator.CreateDefaultPortfolio(); var service = new PortfolioValueService(portfolio, PortfolioTestCreator.TradingCalendar); var result = service.GetValue(PortfolioTestCreator.Stock_ARG.Id, dateRange, ValueFrequency.Week); result.Result.Should().BeEquivalentTo(new { Values = new[] { new ClosingPrice() { Date = new Date(2000, 01, 02), Price = 100.00m }, new ClosingPrice() { Date = new Date(2000, 01, 09), Price = 101.00m }, new ClosingPrice() { Date = new Date(2000, 01, 16), Price = 107.00m }, new ClosingPrice() { Date = new Date(2000, 01, 17), Price = 108.00m } } }); }
public void PortfolioNotFound() { var dateRange = new DateRange(new Date(2000, 01, 01), new Date(2000, 12, 31)); var service = new PortfolioValueService(null, PortfolioTestCreator.TradingCalendar); var result = service.GetValue(dateRange, ValueFrequency.Day); result.Should().HaveNotFoundStatus(); }
public void GetValueForStockNotOwned() { var dateRange = new DateRange(new Date(2000, 01, 01), new Date(2000, 12, 31)); var portfolio = PortfolioTestCreator.CreateDefaultPortfolio(); var service = new PortfolioValueService(portfolio, PortfolioTestCreator.TradingCalendar); var result = service.GetValue(Guid.NewGuid(), dateRange, ValueFrequency.Day); result.Should().HaveNotFoundStatus(); }
public void GetValueForStockMonthly() { var dateRange = new DateRange(new Date(2000, 01, 01), new Date(2000, 05, 25)); var portfolio = PortfolioTestCreator.CreateDefaultPortfolio(); var service = new PortfolioValueService(portfolio, PortfolioTestCreator.TradingCalendar); var result = service.GetValue(PortfolioTestCreator.Stock_ARG.Id, dateRange, ValueFrequency.Month); result.Result.Should().BeEquivalentTo(new { Values = new[] { new ClosingPrice() { Date = new Date(2000, 01, 03), Price = 101.00m }, new ClosingPrice() { Date = new Date(2000, 01, 31), Price = 109.00m }, new ClosingPrice() { Date = new Date(2000, 02, 29), Price = 110.00m }, new ClosingPrice() { Date = new Date(2000, 03, 31), Price = 107.00m }, new ClosingPrice() { Date = new Date(2000, 04, 30), Price = 107.00m }, new ClosingPrice() { Date = new Date(2000, 05, 25), Price = 103.00m } } }); }
public void GetValueMonthly() { var dateRange = new DateRange(new Date(2000, 01, 01), new Date(2000, 05, 25)); var portfolio = PortfolioTestCreator.CreateDefaultPortfolio(); var service = new PortfolioValueService(portfolio, PortfolioTestCreator.TradingCalendar); var result = service.GetValue(dateRange, ValueFrequency.Month); result.Result.Should().BeEquivalentTo(new { Values = new[] { new ClosingPrice() { Date = new Date(2000, 01, 03), Price = 9963.10m }, new ClosingPrice() { Date = new Date(2000, 01, 31), Price = 9985.10m }, new ClosingPrice() { Date = new Date(2000, 02, 29), Price = 9988.10m }, new ClosingPrice() { Date = new Date(2000, 03, 31), Price = 9981.10m }, new ClosingPrice() { Date = new Date(2000, 04, 30), Price = 9981.10m }, new ClosingPrice() { Date = new Date(2000, 05, 25), Price = 9969.10m } } }); }