public MarkdigParser Create(IPageRepository pageRepository, TextSettings textSettings, IUrlHelper urlHelper) { var markdigParser = new MarkdigParser(); // When a link is parsed, use the LinkHrefParser markdigParser.LinkParsed = htmlLinkTag => { var tokenParser = new LinkHrefParser(pageRepository, textSettings, urlHelper); htmlLinkTag = tokenParser.Parse(htmlLinkTag); return(htmlLinkTag); }; // When an image is parsed, use the ImageSrcParser markdigParser.ImageParsed = htmlImageTag => { var provider = new ImageSrcParser(textSettings, urlHelper); htmlImageTag = provider.Parse(htmlImageTag); return(htmlImageTag); }; return(markdigParser); }
public void href_with_dashes_and_23_are_not_encoded() { // Arrange HtmlLinkTag linkTag = new HtmlLinkTag("https://www.google.com/some-page-23", "https://www.google.com/some-page-23", "text", ""); // Act HtmlLinkTag actualTag = _linkHrefParser.Parse(linkTag); // Assert actualTag.Href.ShouldBe("https://www.google.com/some-page-23"); }