Exemple #1
0
        public void OnHandleSeoValues_NoIndexValue_SetsMetaRobotsIndex(RobotsIndex robotsIndex)
        {
            // Arrange
            var attribute = new SeoMetaRobotsIndexAttribute(robotsIndex);

            var seo = SeoHelperTestFactory.Create();

            // Act
            attribute.OnHandleSeoValues(seo);

            // Assert
            Assert.Equal(robotsIndex, seo.MetaRobotsIndex);
        }
Exemple #2
0
        public void OnHandleSeoValues_NoIndexValue_MetaNoIndexOnly(RobotsIndex robotsIndex)
        {
            // Arrange
            var attribute = new SeoMetaRobotsIndexAttribute(robotsIndex);

            var seo = SeoHelperTestFactory.Create();

            // Act
            attribute.OnHandleSeoValues(seo);

            // Assert
            Assert.Null(seo.LinkCanonical);
            Assert.Null(seo.MetaDescription);
            Assert.Null(seo.MetaKeywords);
            Assert.Null(seo.Title);
        }
        public static string GetMetaContent(RobotsIndex robotsIndex)
        {
            switch (robotsIndex)
            {
            case RobotsIndex.IndexNoFollow:
                return(IndexNoFollowMetaContent);

            case RobotsIndex.NoIndexFollow:
                return(NoIndexFollowMetaContent);

            case RobotsIndex.NoIndexNoFollow:
                return(NoIndexNoFollowMetaContent);

            default:
                string message = $"No mapping found for {nameof(RobotsIndex)} value '{robotsIndex}'.";
                throw new ArgumentOutOfRangeException(nameof(robotsIndex), message);
            }
        }
Exemple #4
0
        public void SeoMetaRobotsIndex_WithArgument_ReturnsHtmlContainingValue(
            RobotsIndex robotsIndex,
            string expectedContent)
        {
            // Arrange
            var htmlHelper = HtmlHelperTestFactory.Create();

            // Act
            var html = htmlHelper.SeoMetaRobotsIndex(robotsIndex);

            // Assert
            bool htmlContainsRobots          = html.Contains("robots");
            var  metaContent                 = RobotsIndexManager.GetMetaContent(robotsIndex);
            bool htmlContainsMetaContent     = html.Contains(metaContent);
            bool htmlContainsExpectedContent = html.Contains(expectedContent);

            Assert.True(htmlContainsRobots);
            Assert.True(htmlContainsMetaContent);
            Assert.True(htmlContainsExpectedContent);
        }
Exemple #5
0
        public void SeoMetaRobotsIndex_EmptyArgumentWithValuesInSeoHelper_ReturnsHtmlContainingValue(
            RobotsIndex robotsIndex,
            string expectedContent)
        {
            // Arrange
            var viewContext = ViewContextTestFactory.Create();
            var htmlHelper  = HtmlHelperTestFactory.Create(viewContext);
            var seoHelper   = SeoHelperTestFactory.Create(viewContext);

            seoHelper.MetaRobotsIndex = robotsIndex;

            // Act
            var html = htmlHelper.SeoMetaRobotsIndex();

            // Assert
            bool htmlContainsRobots          = html.Contains("robots");
            var  metaContent                 = RobotsIndexManager.GetMetaContent(robotsIndex);
            bool htmlContainsMetaContent     = html.Contains(metaContent);
            bool htmlContainsExpectedContent = html.Contains(expectedContent);

            Assert.True(htmlContainsRobots);
            Assert.True(htmlContainsMetaContent);
            Assert.True(htmlContainsExpectedContent);
        }
 public SeoMetaRobotsIndexAttribute(RobotsIndex robotsIndex)
 {
     this.robotsIndex = robotsIndex;
 }