Пример #1
0
        public void Should_update_input_with_macro_value()
        {
            var parser = new ButterflyParser();
            parser.LoadDefaultStrategies(new DefaultParseStrategyFactory());
            parser.MacroFactory = new ActivatorFactory<IButterflyMacro>(new NamedTypeRegistry<IButterflyMacro>().RegisterType<FooMacro>("foo"));

            var result = parser.Parse("[::foo] foo [::foo]");
            var text = parser.FlushAndReturn();

            Assert.That(result.Markup, Is.EqualTo("bar foo bar"));
            AssertWithNoRegardForLineBreaks(text, "<p>bar foo bar</p>");
        }
Пример #2
0
        public void Should_parse_markup_in_macros()
        {
            var parser = new ButterflyParser();
            parser.LoadDefaultStrategies(new DefaultParseStrategyFactory());
            parser.MacroFactory = new ActivatorFactory<IButterflyMacro>(new NamedTypeRegistry<IButterflyMacro>().RegisterType<BarMacro>("bar"));

            var result = parser.Parse("[::bar]");
            var text = parser.FlushAndReturn();

            Assert.That(result.Markup, Is.EqualTo("__bold__"));
            AssertWithNoRegardForLineBreaks(text, "<p><strong>bold</strong></p>");
        }