public static async Task <List <DomainStats> > GetDomainStatsDense(this IAggregateReportApiDao dao, string domain, DateTime startDate, DateTime endDate, bool rollup = false, string categoryFilter = null) { List <DomainStats> domainStats = await dao.GetDomainStats(domain, startDate, endDate, rollup, categoryFilter); return(domainStats .FillDateRange(startDate, endDate, ds => ds?.Date ?? DateTime.MinValue, d => DomainStats.CreateEmpty(domain, d)) .ToList()); }
public async Task CheckGetDomainStatsDtoReturnsDomainStats() { string domain = "ncsc.gov.uk"; DateTime startDate = new DateTime(2019, 8, 9); DateTime endDate = new DateTime(2019, 8, 15); DateTime now = new DateTime(2019, 8, 12); DomainStats domainStat = new DomainStats(domain, now, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11); A.CallTo(() => _aggregateReportApiDao.GetDomainStats(domain, A <DateTime> ._, A <DateTime> ._, false, null)) .Returns(Task.FromResult(new List <DomainStats>() { domainStat })); List <DomainStats> domainStats = await _aggregateReportService.GetDomainStatsDto(domain, startDate, endDate); Assert.That(domainStats.Count, Is.EqualTo(7)); Assert.That(domainStats[3], Is.SameAs(domainStat)); }