public void GetPrivacyNotice_ShouldReturnAPrivacyNotice()
        {
            // Arrange
            const string slug = "test-slug";
            var          contentfulPrivacyNotice = new ContentfulPrivacyNotice()
            {
                Slug = slug
            };
            var privacyNotice = new PrivacyNotice()
            {
                Slug = slug
            };
            var contentfulCollection = new ContentfulCollection <ContentfulPrivacyNotice>()
            {
                Items = new List <ContentfulPrivacyNotice> {
                    contentfulPrivacyNotice
                }
            };

            _contentfulClient.Setup(_ => _.GetEntries(It.IsAny <QueryBuilder <ContentfulPrivacyNotice> >(), It.IsAny <CancellationToken>())).ReturnsAsync(contentfulCollection);
            _contentfulFactory.Setup(_ => _.ToModel(contentfulPrivacyNotice)).Returns(privacyNotice);

            // Act
            var result = AsyncTestHelper.Resolve(_repository.GetPrivacyNotice(slug));

            // Assert
            result.Should().BeOfType <PrivacyNotice>();
        }
Beispiel #2
0
        public void Build_ShouldReturnAPrivacyNotice()
        {
            // Arrange
            var privacyNotice = new PrivacyNotice();
            // Act
            var processedPrivacyNotice = _factory.Build(privacyNotice);

            // Assert
            processedPrivacyNotice.Should().BeOfType <ProcessedPrivacyNotice>();
        }
Beispiel #3
0
        public virtual ProcessedPrivacyNotice Build(PrivacyNotice privacyNotice)
        {
            var typeOfDataHtml       = _markdownWrapper.ConvertToHtml(privacyNotice.TypeOfData);
            var purposeHtml          = _markdownWrapper.ConvertToHtml(privacyNotice.Purpose);
            var externallySharedHtml = _markdownWrapper.ConvertToHtml(privacyNotice.ExternallyShared);
            var obtainedHtml         = _markdownWrapper.ConvertToHtml(privacyNotice.Obtained);
            var retentionPeriodHtml  = _markdownWrapper.ConvertToHtml(privacyNotice.RetentionPeriod);
            var legistationHtml      = _markdownWrapper.ConvertToHtml(privacyNotice.Legislation);

            var processedPrivacyNotice = new ProcessedPrivacyNotice(privacyNotice.Slug, privacyNotice.Title, privacyNotice.Category, purposeHtml, typeOfDataHtml, legistationHtml, obtainedHtml, externallySharedHtml, retentionPeriodHtml, privacyNotice.OutsideEu, privacyNotice.AutomatedDecision, privacyNotice.UrlOne, privacyNotice.UrlTwo, privacyNotice.UrlThree, privacyNotice.Breadcrumbs, privacyNotice.ParentTopic);

            return(processedPrivacyNotice);
        }
Beispiel #4
0
        public void Build_ShouldConvertPrivacyNoticeToProcessedPrivacyNotice()
        {
            // Arrange
            var typeOfData = "test-type-of-data";

            _markdownWrapper.Setup(_ => _.ConvertToHtml(typeOfData)).Returns("test-type-of-data-html");

            var purpose = "test-purpose";

            _markdownWrapper.Setup(_ => _.ConvertToHtml(purpose)).Returns("test-purpose-html");

            var externallyShared = "test-externally-shared";

            _markdownWrapper.Setup(_ => _.ConvertToHtml(externallyShared)).Returns("test-externally-shared-html");

            var obtained = "test-obtained";

            _markdownWrapper.Setup(_ => _.ConvertToHtml(obtained)).Returns("test-obtained-html");

            var retentionPeriod = "test-retention";

            _markdownWrapper.Setup(_ => _.ConvertToHtml(retentionPeriod)).Returns("test-retention-html");

            var legislation = "test-legislation";

            _markdownWrapper.Setup(_ => _.ConvertToHtml(legislation)).Returns("test-legislation-html");

            var privacyNotice = new PrivacyNotice()
            {
                Slug              = "test-slug",
                Title             = "test-title",
                Category          = "test-categories",
                Purpose           = "test-purpose",
                TypeOfData        = "test-type-of-data",
                Legislation       = "test-legislation",
                Obtained          = "test-obtained",
                ExternallyShared  = "test-externally-shared",
                RetentionPeriod   = "test-retention",
                OutsideEu         = false,
                AutomatedDecision = false,
                UrlOne            = "test-url-1",
                UrlTwo            = "test-url-2",
                UrlThree          = "test-url-3",
                Breadcrumbs       = new List <Crumb>()
            };

            //Act
            var processedPrivacyNotice = _factory.Build(privacyNotice);

            //Assert
            processedPrivacyNotice.Slug.Should().Be("test-slug");
            processedPrivacyNotice.Title.Should().Be("test-title");
            processedPrivacyNotice.Category.Should().Be("test-categories");
            processedPrivacyNotice.Purpose.Should().Be("test-purpose-html");
            processedPrivacyNotice.TypeOfData.Should().Be("test-type-of-data-html");
            processedPrivacyNotice.Legislation.Should().Be("test-legislation-html");
            processedPrivacyNotice.Obtained.Should().Be("test-obtained-html");
            processedPrivacyNotice.ExternallyShared.Should().Be("test-externally-shared-html");
            processedPrivacyNotice.RetentionPeriod.Should().Be("test-retention-html");
            processedPrivacyNotice.OutsideEu.Should().Be(false);
            processedPrivacyNotice.AutomatedDecision.Should().Be(false);
            processedPrivacyNotice.UrlOne.Should().Be("test-url-1");
            processedPrivacyNotice.UrlTwo.Should().Be("test-url-2");
            processedPrivacyNotice.UrlThree.Should().Be("test-url-3");
        }