Ejemplo n.º 1
0
        public void TestRender()
        {
            string inText    = "In text citation value";
            string uri       = "link uri";
            string reference = "reference_name";

            Mock <ICitation> citation = new Mock <ICitation>();

            citation.Setup(c => c.InTextCite).Returns(inText);
            citation.Setup(c => c.URL).Returns(uri);
            citation.Setup(c => c.Name).Returns(reference);
            citations.Add(reference, citation.Object);

            ReferenceInline inline = new ReferenceInline(reference);

            renderer.Write(builder, inline);

            Assert.AreEqual(1, document.LastSection.Elements.Count);
            Paragraph paragraph = (Paragraph)document.LastSection.Elements[0];

            Assert.AreEqual(1, paragraph.Elements.Count);
            Hyperlink link = (Hyperlink)paragraph.Elements[0];

            Assert.AreEqual(1, link.Elements.Count);
            FormattedText formatted = (FormattedText)link.Elements[0];

            Assert.AreEqual(1, formatted.Elements.Count);
            Text text = (Text)formatted.Elements[0];

            Assert.AreEqual(inText, text.Content);
        }
Ejemplo n.º 2
0
        public void EnsureSucessfulParse(string reference)
        {
            StringSlice slice  = new StringSlice($"[{reference}]");
            bool        result = parser.Match(processor, ref slice);

            Assert.True(result);
            Assert.NotNull(processor.Inline);
            Assert.AreEqual(typeof(ReferenceInline), processor.Inline.GetType());
            ReferenceInline inline = (ReferenceInline)processor.Inline;

            Assert.AreEqual(reference, inline.ReferenceName);
        }