public void GetSeries() { var stock = new Stock { Isin = "DE0005190003" }; stock.Company = new Company { Name = "BMW" }; stock.Company.Stocks.Add(stock); var dataProvider = new WebFigureProvider(new StorageService(myProjectHost.Object), myLutService.Object); dataProvider.CustomResolverCreator = r => new CompositeMacroResolver(new MacroResolver(TestDataRoot), r); var request = new DataProviderRequest(stock, typeof(Dividend), new YearPeriod(2001), new YearPeriod(2004)) { WithPreview = false, ThrowOnError = true }; var series = new List <IFigure>(); dataProvider.Fetch(request, series); Assert.That(series.Count, Is.EqualTo(4)); foreach (var dividend in series.Cast <Dividend>()) { Assert.That(dividend.Company.Stocks.First().Isin, Is.EqualTo("DE0005190003")); Assert.That(dividend.Period, Is.InstanceOf <YearPeriod>()); Assert.That(dividend.Source, Does.Contain("ariva").IgnoreCase.And.Contains("fundamentals").IgnoreCase); Assert.That(dividend.Timestamp.Date, Is.EqualTo(DateTime.Today)); Assert.That(dividend.Currency, Is.Null); } Assert.That(series[0].Period, Is.EqualTo(new YearPeriod(2001))); Assert.That(series[0].Value, Is.EqualTo(350000000d)); Assert.That(series[1].Period, Is.EqualTo(new YearPeriod(2002))); Assert.That(series[1].Value, Is.EqualTo(351000000d)); Assert.That(series[2].Period, Is.EqualTo(new YearPeriod(2003))); Assert.That(series[2].Value, Is.EqualTo(392000000d)); Assert.That(series[3].Period, Is.EqualTo(new YearPeriod(2004))); Assert.That(series[3].Value, Is.EqualTo(419000000d)); }
public void GetCell() { var stock = new Stock { Isin = "DE0007664039" }; stock.Company = new Company { Name = "Volkswagen" }; stock.Company.Stocks.Add(stock); var dataProvider = new WebFigureProvider(new StorageService(myProjectHost.Object), myLutService.Object); dataProvider.CustomResolverCreator = r => new CompositeMacroResolver(new MacroResolver(TestDataRoot), r); var request = new DataProviderRequest(stock, typeof(Price), new DayPeriod(DateTime.MinValue), new DayPeriod(DateTime.MaxValue)) { WithPreview = false, ThrowOnError = true }; var series = new List <IFigure>(); dataProvider.Fetch(request, series); Assert.That(series.Count, Is.EqualTo(1)); var price = ( Price )series.Single(); Assert.That(price.Stock.Isin, Is.EqualTo("DE0007664039")); Assert.That((( DayPeriod )price.Period).Day.Date, Is.EqualTo(DateTime.Today)); Assert.That(price.Source, Does.Contain("ariva").IgnoreCase.And.Contains("price").IgnoreCase); Assert.That(price.Timestamp.Date, Is.EqualTo(DateTime.Today)); Assert.That(price.Value, Is.EqualTo(134.356d)); Assert.That(price.Currency.Symbol, Is.EqualTo("EUR")); }