public static string ToHtml(this String toHtml) { if (toHtml.IsEmpty()) return String.Empty; var items = new HistoryItemParser().Parse(toHtml); var result = new HistoryItemHtmlRenderer().Render(items); result = urlFinderRegEx.Replace(result, @"<a href=""${link}"">${link}</a>"); return result; }
public void finds_all_items() { const string input = "item1\r\nitem2\nitem3"; var items = new HistoryItemParser().Parse(input).ToArray(); items[0].ToString().ShouldEqual("item1"); items[1].ToString().ShouldEqual("item2"); items[2].ToString().ShouldEqual("item3"); }
public void finds_email_headers_mixed_with_items() { const string input = "item1\r\nto: [email protected]\nitem3"; var items = new HistoryItemParser().Parse(input).ToArray(); items[0].ToString().ShouldEqual("item1"); var emailHeaderItem = ((EmailHeader) items[1]).Headers.First(); emailHeaderItem.Title.ShouldEqual("to"); emailHeaderItem.Text.ShouldEqual("*****@*****.**"); items[2].ToString().ShouldEqual("item3"); }
public void beforeEach() { _logger = MockRepository.GenerateStub<ILogger>(); var historyItemParser = new HistoryItemParser(new HistoryParsers(new HistorySettings(), new HistoryOriginalMessageConfiguration(_logger)), _logger); _cut = new HistoryOutputParser(new ParagraphEndLocator(), new ParagraphAggregator(), historyItemParser, new HistoryItemHtmlRenderer(), new HtmlEncodeOutputEncoder(), new UrlLinkifier()); }