Esempio n. 1
0
        public void Visit(MdCodeBlock codeBlock)
        {
            string codeFence;

            switch (m_Options.CodeBlockStyle)
            {
            case MdCodeBlockStyle.Backtick:
                codeFence = "```";
                break;

            case MdCodeBlockStyle.Tilde:
                codeFence = "~~~";
                break;

            default:
                throw new ArgumentException($"Unsupported code block style: {m_Options.CodeBlockStyle}");
            }

            m_Writer.WriteLine($"{codeFence}{codeBlock.InfoString ?? ""}");

            var lines = codeBlock.Text.Split(s_LineBreakChars, StringSplitOptions.RemoveEmptyEntries);

            foreach (var line in lines)
            {
                m_Writer.WriteLine(line);
            }

            m_Writer.WriteLine(codeFence);
        }
Esempio n. 2
0
        public void DeepEquals_returns_expected_value()
        {
            var instance1 = new MdCodeBlock("content");
            var instance2 = new MdCodeBlock("content");
            var instance3 = new MdCodeBlock("other content");
            var instance4 = new MdCodeBlock("other content", "infoString");
            var instance5 = new MdCodeBlock("other content", "infoString");
            var instance6 = new MdCodeBlock("other content", "otherInfoString");

            Assert.True(instance1.DeepEquals(instance1));
            Assert.True(instance1.DeepEquals(instance2));
            Assert.True(instance4.DeepEquals(instance5));

            Assert.False(instance1.DeepEquals(null));
            Assert.False(instance1.DeepEquals(instance3));
            Assert.False(instance1.DeepEquals(new MdParagraph()));
            Assert.False(instance1.DeepEquals(instance6));
            Assert.False(instance4.DeepEquals(instance6));
        }