public async Task <GetStatisticsDto> GetStatistics() { var query = GetStatisticsQuery.Create(); var result = await _mediator.Send(query); return(result); }
private async Task <SaleStatisticsViewModel> QueryStatistics() { var query = new GetStatisticsQuery(); var response = await _mediator.Send(query); return(_mapper.Map <GetStatisticsQueryResponse, SaleStatisticsViewModel>(response)); }
public GetStatisticsQueryTestsFixtures() { Accounts = new List <Account> { new Account(), new Account() }; LegalEntities = new List <LegalEntity> { new LegalEntity(), new LegalEntity(), new LegalEntity(), new LegalEntity(), }; PayeSchemes = new List <Paye> { new Paye(), new Paye(), new Paye(), new Paye() }; Agreements = new List <EmployerAgreement> { new EmployerAgreement(), new EmployerAgreement { StatusId = EmployerAgreementStatus.Signed }, new EmployerAgreement { StatusId = EmployerAgreementStatus.Signed }, new EmployerAgreement { StatusId = EmployerAgreementStatus.Signed }, new EmployerAgreement { StatusId = EmployerAgreementStatus.Signed }, new EmployerAgreement { StatusId = EmployerAgreementStatus.Signed } }; AccountsDb = new Mock <EmployerAccountsDbContext>(); AccountsDb.Setup(d => d.Accounts).Returns(new DbSetStub <EmployerAccounts.Models.Account.Account>(Accounts)); AccountsDb.Setup(d => d.LegalEntities).Returns(new DbSetStub <LegalEntity>(LegalEntities)); AccountsDb.Setup(d => d.Payees).Returns(new DbSetStub <Paye>(PayeSchemes)); AccountsDb.Setup(d => d.Agreements).Returns(new DbSetStub <EmployerAgreement>(Agreements)); Handler = new GetStatisticsQueryHandler(new Lazy <EmployerAccountsDbContext>(() => AccountsDb.Object)); Query = new GetStatisticsQuery(); QueryFutureManager.AllowQueryBatch = false; }
public void WhenRequestingStatistics_ThenStatisticsAreReturned() { var date1 = new DateTime(2020, 5, 23, 23, 58, 1, DateTimeKind.Utc); var date2 = new DateTime(2020, 5, 24, 11, 03, 1, DateTimeKind.Utc); var date3 = new DateTime(2020, 5, 25, 0, 0, 0, DateTimeKind.Utc); var givenMedia = new[] { new MediaInstance { Id = "media1", Timestamp = date1 }, new MediaInstance { Id = "media2", Timestamp = date1 }, new MediaInstance { Id = "media3", Timestamp = date2 }, new MediaInstance { Id = "media4", Timestamp = date2 }, new MediaInstance { Id = "media5", Timestamp = date2 }, }; var expectedResult = new GetStatisticsDto { Data = new List <List <long> > { new List <long> { (long)(date1.Date - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds, 2 }, new List <long> { (long)(date2.Date - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds, 5 }, new List <long> { (long)(date3.Date - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds, 5 } } }; IApplicationContext context = CreateMockApplicationContext(givenMedia); var query = GetStatisticsQuery.Create(); IRequestHandler <GetStatisticsQuery, GetStatisticsDto> sut = new GetStatisticsQueryHandler(context, _timeProviderMock.Object); var actualResult = sut.Handle(query, CancellationToken.None).Result; actualResult.Should().BeEquivalentTo(expectedResult); }
public async Task <ICollection <SiteStatistic> > Handle(GetStatisticsQuery request, CancellationToken cancellationToken) { // todo add paging var sites = await _siteRepository.GetManyAsync(new EmptyFilterSpecification <Site>()); var statistic = new List <SiteStatistic>(); foreach (var site in sites) { var health = await _siteHealthCalculationStrategy.GetHealthAsync(site); statistic.Add(new SiteStatistic { SiteName = site.Name, SiteHealth = health }); } return(statistic); }
public void WhenRequestingStatisticsFromEmptyList_ThenListWithoutInstancesIsReturned() { var date3 = new DateTime(2020, 5, 25, 15, 34, 1, DateTimeKind.Utc); IEnumerable <MediaInstance> givenMedia = new List <MediaInstance>(); var expectedResult = new GetStatisticsDto { Data = new List <List <long> > { new List <long> { (long)(date3.Date - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds, 0 } } }; IApplicationContext context = CreateMockApplicationContext(givenMedia); var query = GetStatisticsQuery.Create(); IRequestHandler <GetStatisticsQuery, GetStatisticsDto> sut = new GetStatisticsQueryHandler(context, _timeProviderMock.Object); var actualResult = sut.Handle(query, CancellationToken.None).Result; actualResult.Should().BeEquivalentTo(expectedResult); }