public void MultilineItems() { /* given */ int listEnd; var markdown = new StringBuilder(); markdown.Append("- item\n"); markdown.Append(" something here for the next line of the item\n"); markdown.Append("- item\n"); markdown.Append(" this is item two\n"); markdown.Append("- item\n"); markdown.Append("should not the part of item 3\n"); var listRange = new StringRange(markdown.ToString()); var builder = new UnorderedListBuilder('-'); /* when */ var list = (List)builder.Build(0, listRange, out listEnd); /* then */ list.Items.Should().HaveCount(3); var item1 = list.Items.ElementAt(0); item1.ToString().ShouldBeEquivalentTo("item\n something here for the next line of the item"); var item2 = list.Items.ElementAt(1); item2.ToString().ShouldBeEquivalentTo("item\n this is item two"); var item3 = list.Items.ElementAt(2); item3.ToString().ShouldBeEquivalentTo("item"); }
public void Build() { /* given */ int listEnd; var markdown = new StringBuilder(); markdown.Append("- item 1\n"); markdown.Append("- item\n"); markdown.Append(" this is item two 2\n"); markdown.Append("- item 3\n"); var listRange = new StringRange(markdown.ToString()); var builder = new UnorderedListBuilder('-'); /* when */ var list = (List)builder.Build(0, listRange, out listEnd); /* then */ list.Items.Should().HaveCount(3); var item1 = list.Items.ElementAt(0); item1.ToString().ShouldBeEquivalentTo("item 1"); var item2 = list.Items.ElementAt(1); item2.ToString().ShouldBeEquivalentTo("item\n this is item two 2"); var item3 = list.Items.ElementAt(2); item3.ToString().ShouldBeEquivalentTo("item 3"); }