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());
        }
Exemple #2
0
        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));
        }