Example #1
0
 private TopicService SetupTopicService(
     ContentDbContext contentContext       = null,
     StatisticsDbContext statisticsContext = null,
     PersistenceHelper <ContentDbContext> persistenceHelper = null,
     IMapper mapper           = null,
     IUserService userService = null,
     IReleaseSubjectRepository releaseSubjectRepository = null,
     IReleaseDataFileService releaseDataFileService     = null,
     IReleaseFileService releaseFileService             = null,
     IPublishingService publishingService   = null,
     IMethodologyService methodologyService = null)
 {
     return(new TopicService(
                Mock.Of <IConfiguration>(),
                contentContext ?? Mock.Of <ContentDbContext>(),
                statisticsContext ?? Mock.Of <StatisticsDbContext>(),
                persistenceHelper ?? MockUtils.MockPersistenceHelper <ContentDbContext, Topic>(_topic.Id, _topic).Object,
                mapper ?? AdminMapper(),
                userService ?? MockUtils.AlwaysTrueUserService().Object,
                releaseSubjectRepository ?? Mock.Of <IReleaseSubjectRepository>(),
                releaseDataFileService ?? Mock.Of <IReleaseDataFileService>(),
                releaseFileService ?? Mock.Of <IReleaseFileService>(),
                publishingService ?? Mock.Of <IPublishingService>(),
                methodologyService ?? Mock.Of <IMethodologyService>(),
                Mock.Of <IBlobCacheService>()
                ));
 }
     Mock <IUserService>) Mocks()
 {
     return(
         new Mock <ContentDbContext>(),
         MockUtils.MockPersistenceHelper <ContentDbContext, Release>(_release.Id, _release),
         new Mock <IUserService>());
 }
        public async Task QueryForDataBlock_NotDataBlockType()
        {
            var contentPersistenceHelper =
                MockUtils.MockPersistenceHelper <ContentDbContext, ReleaseContentBlock>(
                    new ReleaseContentBlock
            {
                ReleaseId = _releaseId,
                Release   = new Release
                {
                    Id = _releaseId,
                },
                ContentBlockId = _dataBlockId,
                ContentBlock   = new HtmlBlock
                {
                    Id = _dataBlockId,
                }
            }
                    );

            var controller = BuildTableBuilderController(
                contentPersistenceHelper: contentPersistenceHelper.Object
                );

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext()
            };

            var result = await controller.QueryForDataBlock(_releaseId, _dataBlockId);

            Assert.IsType <NotFoundResult>(result.Result);
        }
        private Mock <IPersistenceHelper <ContentDbContext> > DefaultPersistenceHelperMock()
        {
            var mock = MockUtils.MockPersistenceHelper <ContentDbContext, Release>();

            MockUtils.SetupCall(mock, _release.Id, _release);
            return(mock);
        }
        public async Task QueryForDataBlock()
        {
            var tableBuilderService = new Mock <ITableBuilderService>();

            tableBuilderService
            .Setup(
                s =>
                s.Query(
                    _releaseId,
                    It.Is <ObservationQueryContext>(
                        q => q.SubjectId == _query.SubjectId
                        )
                    )
                )
            .ReturnsAsync(
                new TableBuilderResultViewModel
            {
                Results = new List <ObservationViewModel>
                {
                    new ObservationViewModel()
                }
            }
                );

            var contentPersistenceHelper =
                MockUtils.MockPersistenceHelper <ContentDbContext, ReleaseContentBlock>(
                    new ReleaseContentBlock
            {
                ReleaseId = _releaseId,
                Release   = new Release
                {
                    Id = _releaseId,
                },
                ContentBlockId = _dataBlockId,
                ContentBlock   = new DataBlock
                {
                    Id     = _dataBlockId,
                    Query  = _query,
                    Charts = new List <IChart>()
                }
            }
                    );

            var controller = BuildTableBuilderController(
                tableBuilderService: tableBuilderService.Object,
                contentPersistenceHelper: contentPersistenceHelper.Object
                );

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext()
            };

            var result = await controller.QueryForDataBlock(_releaseId, _dataBlockId);

            Assert.IsType <TableBuilderResultViewModel>(result.Value);
            Assert.Single(result.Value.Results);

            MockUtils.VerifyAllMocks(tableBuilderService, contentPersistenceHelper);
        }
            Mock <IUserService>) Mocks()
        {
            var persistenceHelper = MockUtils.MockPersistenceHelper <ContentDbContext>();

            MockUtils.SetupCall(persistenceHelper, _release.Id, _release);

            return(persistenceHelper,
                   MockUtils.AlwaysTrueUserService());
        }
            Mock <IReleaseFileService>) Mocks()
        {
            var persistenceHelper = MockUtils.MockPersistenceHelper <ContentDbContext>();

            MockUtils.SetupCall(persistenceHelper, _release.Id, _release);
            MockUtils.SetupCall(persistenceHelper, _dataBlock.Id, _dataBlock);

            return(
                new Mock <IUserService>(),
                persistenceHelper,
                new Mock <IReleaseFileService>());
        }
        private TableBuilderController BuildTableBuilderController(
            ITableBuilderService tableBuilderService = null,
            IPersistenceHelper <ContentDbContext> contentPersistenceHelper = null,
            IUserService userService = null)

        {
            return(new TableBuilderController(
                       tableBuilderService ?? new Mock <ITableBuilderService>().Object,
                       contentPersistenceHelper ?? MockUtils.MockPersistenceHelper <ContentDbContext>().Object,
                       userService ?? MockUtils.AlwaysTrueUserService().Object
                       ));
        }
            Mock <IUserService>) Mocks()
        {
            var persistenceHelper = MockUtils.MockPersistenceHelper <ContentDbContext>();

            MockUtils.SetupCall(persistenceHelper, _release.Id, _release);
            MockUtils.SetupCall(persistenceHelper, _comment.Id, _comment);

            return(
                new Mock <ContentDbContext>(),
                persistenceHelper,
                new Mock <IMapper>(),
                new Mock <IUserService>());
        }
 private ReleasePublishingStatusService BuildReleaseStatusService(
     IMapper mapper           = null,
     IUserService userService = null,
     IPersistenceHelper <ContentDbContext> persistenceHelper = null,
     ITableStorageService publisherTableStorageService       = null)
 {
     return(new ReleasePublishingStatusService(
                mapper ?? MapperUtils.AdminMapper(),
                userService ?? new Mock <IUserService>().Object,
                persistenceHelper ?? MockUtils.MockPersistenceHelper <ContentDbContext, Release>(_release.Id, _release)
                .Object,
                publisherTableStorageService ?? new Mock <ITableStorageService>().Object
                ));
 }
Example #11
0
            Mock <IGuidGenerator>) Mocks()
        {
            var contentPersistenceHelper = MockUtils.MockPersistenceHelper <ContentDbContext>();

            MockUtils.SetupCall(contentPersistenceHelper, Release.Id, Release);

            return(
                new Mock <ILogger <FootnoteService> >(),
                contentPersistenceHelper,
                new Mock <IUserService>(),
                new Mock <IFootnoteRepository>(),
                MockUtils.MockPersistenceHelper <StatisticsDbContext, Footnote>(Footnote.Id, Footnote),
                new Mock <IGuidGenerator>());
        }
        public async Task QueryForDataBlock_NotModified()
        {
            var contentPersistenceHelper =
                MockUtils.MockPersistenceHelper <ContentDbContext, ReleaseContentBlock>(
                    new ReleaseContentBlock
            {
                ReleaseId = _releaseId,
                Release   = new Release
                {
                    Id        = _releaseId,
                    Published = DateTime.Parse("2019-11-11T12:00:00Z")
                },
                ContentBlockId = _dataBlockId,
                ContentBlock   = new DataBlock
                {
                    Id    = _dataBlockId,
                    Query = _query
                }
            }
                    );

            var controller = BuildTableBuilderController(
                contentPersistenceHelper: contentPersistenceHelper.Object
                );

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext()
                {
                    Request =
                    {
                        Headers =
                        {
                            {
                                HeaderNames.IfModifiedSince,
                                DateTime.Parse("2019-11-11T12:00:00Z").ToUniversalTime().ToString("R")
                            }
                        }
                    }
                }
            };

            var result = await controller.QueryForDataBlock(_releaseId, _dataBlockId);

            var statusCodeResult = Assert.IsType <StatusCodeResult>(result.Result);

            Assert.Equal(StatusCodes.Status304NotModified, statusCodeResult.StatusCode);

            MockUtils.VerifyAllMocks(contentPersistenceHelper);
        }
 private ThemeService SetupThemeService(
     ContentDbContext context = null,
     IMapper mapper           = null,
     PersistenceHelper <ContentDbContext> persistenceHelper = null,
     IUserService userService             = null,
     ITopicService topicService           = null,
     IPublishingService publishingService = null)
 {
     return(new ThemeService(
                context ?? new Mock <ContentDbContext>().Object,
                mapper ?? AdminMapper(),
                persistenceHelper ?? MockUtils.MockPersistenceHelper <ContentDbContext, Theme>(_theme.Id, _theme).Object,
                userService ?? MockUtils.AlwaysTrueUserService().Object,
                topicService ?? new Mock <ITopicService>().Object,
                publishingService ?? new Mock <IPublishingService>().Object
                ));
 }
Example #14
0
        private Mock <IPersistenceHelper <ContentDbContext> > PersistenceHelperMock()
        {
            var persistenceHelper = MockUtils.MockPersistenceHelper <ContentDbContext>();

            MockUtils.SetupCall(persistenceHelper, _release.Id, _release);
            MockUtils.SetupCall(persistenceHelper, _dataBlock.Id, _dataBlock);
            MockUtils.SetupCall(
                persistenceHelper,
                new ReleaseContentBlock
            {
                Release        = _release,
                ReleaseId      = _release.Id,
                ContentBlock   = _dataBlock,
                ContentBlockId = _dataBlock.Id,
            }
                );

            return(persistenceHelper);
        }
 private TopicService SetupTopicService(
     ContentDbContext contentContext       = null,
     StatisticsDbContext statisticsContext = null,
     PersistenceHelper <ContentDbContext> persistenceHelper = null,
     IMapper mapper           = null,
     IUserService userService = null,
     IReleaseSubjectService releaseSubjectService   = null,
     IReleaseDataFileService releaseDataFileService = null,
     IReleaseFileService releaseFileService         = null,
     IPublishingService publishingService           = null)
 {
     return(new TopicService(
                contentContext ?? new Mock <ContentDbContext>().Object,
                statisticsContext ?? new Mock <StatisticsDbContext>().Object,
                persistenceHelper ?? MockUtils.MockPersistenceHelper <ContentDbContext, Topic>(_topic.Id, _topic).Object,
                mapper ?? AdminMapper(),
                userService ?? MockUtils.AlwaysTrueUserService().Object,
                releaseSubjectService ?? new Mock <IReleaseSubjectService>().Object,
                releaseDataFileService ?? new Mock <IReleaseDataFileService>().Object,
                releaseFileService ?? new Mock <IReleaseFileService>().Object,
                publishingService ?? new Mock <IPublishingService>().Object
                ));
 }
Example #16
0
 private Mock <IPersistenceHelper <ContentDbContext> > DefaultPersistenceHelperMock()
 {
     return(MockUtils.MockPersistenceHelper <ContentDbContext, Release>(_release.Id, _release));
 }
 private Mock <IPersistenceHelper <ContentDbContext> > DefaultPersistenceHelperMock()
 {
     return(MockUtils.MockPersistenceHelper <ContentDbContext, MethodologyVersion>(_methodologyVersion.Id, _methodologyVersion));
 }
Example #18
0
 private Mock <IPersistenceHelper <StatisticsDbContext> > StatisticsPersistenceHelperMock(Subject subject)
 {
     return(MockUtils.MockPersistenceHelper <StatisticsDbContext, Subject>(subject.Id, subject));
 }
        public async Task QueryForDataBlock_IsModified()
        {
            var tableBuilderService = new Mock <ITableBuilderService>();

            tableBuilderService
            .Setup(
                s =>
                s.Query(
                    _releaseId,
                    It.Is <ObservationQueryContext>(
                        q => q.SubjectId == _query.SubjectId
                        )
                    )
                )
            .ReturnsAsync(
                new TableBuilderResultViewModel
            {
                Results = new List <ObservationViewModel>
                {
                    new ObservationViewModel()
                }
            }
                );

            var contentPersistenceHelper =
                MockUtils.MockPersistenceHelper <ContentDbContext, ReleaseContentBlock>(
                    new ReleaseContentBlock
            {
                ReleaseId = _releaseId,
                Release   = new Release
                {
                    Id        = _releaseId,
                    Published = DateTime.Parse("2020-11-11T12:00:00Z")
                },
                ContentBlockId = _dataBlockId,
                ContentBlock   = new DataBlock
                {
                    Id     = _dataBlockId,
                    Query  = _query,
                    Charts = new List <IChart>()
                }
            }
                    );

            var controller = BuildTableBuilderController(
                tableBuilderService: tableBuilderService.Object,
                contentPersistenceHelper: contentPersistenceHelper.Object
                );

            controller.ControllerContext = new ControllerContext
            {
                HttpContext = new DefaultHttpContext()
                {
                    Request =
                    {
                        Headers =
                        {
                            {
                                HeaderNames.IfModifiedSince,
                                DateTime.Parse("2019-11-11T12:00:00Z").ToUniversalTime().ToString("R")
                            }
                        }
                    }
                }
            };

            var result = await controller.QueryForDataBlock(_releaseId, _dataBlockId);

            Assert.IsType <TableBuilderResultViewModel>(result.Value);
            Assert.Single(result.Value.Results);

            MockUtils.VerifyAllMocks(tableBuilderService, contentPersistenceHelper);
        }