Example #1
0
        public void CorrectConverting_WhenRenderHeaderTag()
        {
            var line      = "#kek";
            var converter = new DefaultHtmlConverter(Utils.GetAllAvailableRules(), Utils.GetAllAvailableParsers());
            var parsed    = new List <Token>()
            {
                new Token(0, 4, Utils.GetAllAvailableRules().First(e => e.MarkdownTag == "#"))
            };

            var actual = converter.RenderLine(line, parsed);

            actual.Should().Be("<h1>kek</h1>");
        }
Example #2
0
        public void CorrectConverting_WhenNestingTagsInLine()
        {
            var line      = "#_a_";
            var headerTag = new Token(0, line.Length, new Headers());
            var boldTag   = new Token(1, 3, new CursiveRuleWithSingleUnderscores());
            var parsed    = new List <Token>()
            {
                headerTag, boldTag
            };

            var converter = new DefaultHtmlConverter(Utils.GetAllAvailableRules(), Utils.GetAllAvailableParsers());
            var result    = converter.RenderLine(line, parsed);

            result.Should().BeEquivalentTo("<h1><em>a</em></h1>");
        }
Example #3
0
        public void CorrectConverting_WhenNeedsRenderingOneTag(string line, string markupTag,
                                                               int leftBorderOfSubline, int rightBorderOfSubline, string expected)
        {
            var converter = new DefaultHtmlConverter(Utils.GetAllAvailableRules(), Utils.GetAllAvailableParsers());
            var parsed    = new List <Token>()
            {
                new Token(leftBorderOfSubline, rightBorderOfSubline,
                          Utils.GetAllAvailableRules().First(e => e.MarkdownTag == markupTag)),
                new Token(-1, line.Length, new Paragraph())
            };

            var actual = converter.RenderLine(line, parsed);

            actual.Should().Be(expected);
        }
Example #4
0
        public void CorrectConverting_WhenFewTagsInLine()
        {
            var line         = "_a_ __b__";
            var cursiveTag   = new Token(0, 2, new CursiveRuleWithSingleUnderscores());
            var boldTag      = new Token(4, 7, new BoldRuleWithDoubleUnderscores());
            var paragraphTag = new Token(-1, line.Length, new Paragraph());
            var parsed       = new List <Token>()
            {
                cursiveTag, boldTag, paragraphTag
            };

            var converter = new DefaultHtmlConverter(Utils.GetAllAvailableRules(), Utils.GetAllAvailableParsers());
            var result    = converter.RenderLine(line, parsed);

            result.Should().BeEquivalentTo("<p><em>a</em> <strong>b</strong></p>");
        }