public void CreateElement_FromIDocumentCodeBlockContent_ShouldReturnInstanceOfMarkdownChapterString()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            IPrintableDocumentCodeBlock chapterStringContent =
                factory.CreateElement <IPrintableDocumentCodeBlock>();

            Assert.IsInstanceOfType(chapterStringContent, typeof(MarkdownCodeBlock));
        }
        public void CreateElement_FromContainerType_ShouldReturnDefaultValueNull()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            IMarkdownParagraph element =
                factory.CreateElement <IMarkdownParagraph>();

            Assert.IsNull(element);
        }
        public void CreateMarkdownElement_FromIPrintableDocumentParagraphHyperlink_ShouldReturnMarkdownHyperlinObject()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            IPrintable returnValue =
                factory.CreateElement <IPrintableDocumentParagraphHyperlink>();

            Assert.IsInstanceOfType(returnValue, typeof(MarkdownHyperlink));
        }
        public void CreateElement_FromIFormattableParagraphTableContent_ShouldReturnInstanceOfMarkdownChapterString()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            IPrintableParagraphTable chapterStringContent =
                factory.CreateElement <IPrintableParagraphTable>();

            Assert.IsInstanceOfType(chapterStringContent, typeof(MarkdownTable));
        }
        public void CreateMarkdownElement_FromNotImplementedElementType_ShouldReturnDefaultValue()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            IPrintable returnValue =
                factory.CreateElement <INotExistentElement>();

            Assert.AreEqual(default(INotExistentElement), returnValue);
        }