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>"); }
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>"); }