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

            IHeaderContainer returnValue =
                factory.CreateMarkdownContainer <IMarkdownDocument>("Test");

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

            IMarkdownParagraph paragraph =
                factory.CreateMarkdownContainer <IMarkdownParagraph>("Test");

            Assert.IsInstanceOfType(paragraph, typeof(MarkdownParagraph));
        }
        public void CreateMarkdownContainer_FromNotImplementedContainerType_ShouldReturnDefaultValue()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            IHeaderContainer returnValue =
                factory.CreateMarkdownContainer <INotExistentContainer>("Test");

            Assert.AreEqual(default(INotExistentContainer), returnValue);
        }
        public void CreateElement_FromBaseTypeIPrintable_ShouldReturnDefaultValueNull()
        {
            MarkdownElementFactory factory = new MarkdownElementFactory();

            ITestContainer element =
                factory.CreateMarkdownContainer <ITestContainer>("Test");

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

            IHeaderContainer returnValue =
                factory.CreateMarkdownContainer <IMarkdownSite>("Test");

            Assert.AreEqual("Test", returnValue.HeaderContent);
        }