Example #1
0
        public void CreateProxyFencedBlock_CreatesProxyFencedBlock()
        {
            // Arrange
            const int      dummyOpeningFenceIndent    = 5;
            const int      dummyOpeningFenceCharCount = 6;
            const int      dummyColumn         = 2;
            const int      dummyLineStart      = 7;
            const int      dummyLineEnd        = 99;
            BlockProcessor dummyBlockProcessor = MarkdigTypesFactory.CreateBlockProcessor();

            dummyBlockProcessor.Column = dummyColumn;
            dummyBlockProcessor.Line   = new StringSlice("", dummyLineStart, dummyLineEnd);
            Mock <BlockParser>    dummyBlockParser = _mockRepository.Create <BlockParser>();
            FlexiCodeBlockFactory testSubject      = CreateFlexiCodeBlockFactory();

            // Act
            ProxyFencedLeafBlock result = testSubject.CreateProxyFencedBlock(dummyOpeningFenceIndent,
                                                                             dummyOpeningFenceCharCount,
                                                                             dummyBlockProcessor,
                                                                             dummyBlockParser.Object);

            // Assert
            Assert.Equal(dummyOpeningFenceIndent, result.OpeningFenceIndent);
            Assert.Equal(dummyOpeningFenceCharCount, result.OpeningFenceCharCount);
            Assert.Equal(dummyColumn, result.Column);
            Assert.Equal(dummyLineStart, result.Span.Start);
            Assert.Equal(dummyLineEnd, result.Span.End);
            Assert.Same(dummyBlockParser.Object, result.Parser);
            Assert.Equal(nameof(FlexiCodeBlock), result.MainTypeName);
        }
Example #2
0
        public void Create_FromProxyFencedLeafBlock_CreatesFlexiCodeBlock()
        {
            // Arrange
            var            dummyProxyFencedLeafBlock     = new ProxyFencedLeafBlock(0, 0, null, null);
            BlockProcessor dummyBlockProcessor           = MarkdigTypesFactory.CreateBlockProcessor();
            FlexiCodeBlock dummyFlexiCodeBlock           = CreateFlexiCodeBlock();
            Mock <FlexiCodeBlockFactory> mockTestSubject = CreateMockFlexiCodeBlockFactory();

            mockTestSubject.CallBase = true;
            mockTestSubject.Setup(t => t.CreateCore(dummyProxyFencedLeafBlock, dummyBlockProcessor)).Returns(dummyFlexiCodeBlock);

            // Act
            FlexiCodeBlock result = mockTestSubject.Object.Create(dummyProxyFencedLeafBlock, dummyBlockProcessor);

            // Assert
            _mockRepository.VerifyAll();
            Assert.Same(dummyFlexiCodeBlock, result);
        }
 /// <summary>
 /// Creates a <see cref="FlexiCodeBlock"/> from a <see cref="ProxyFencedLeafBlock"/>.
 /// </summary>
 /// <param name="proxyFencedBlock">The <see cref="ProxyFencedLeafBlock"/> containing data for the <see cref="FlexiCodeBlock"/>.</param>
 /// <param name="blockProcessor">The <see cref="BlockProcessor"/> processing the <see cref="FlexiCodeBlock"/>.</param>
 /// <exception cref="ArgumentNullException">Thrown if <paramref name="blockProcessor"/> is <c>null</c>.</exception>
 /// <exception cref="ArgumentNullException">Thrown if <paramref name="proxyFencedBlock"/> is <c>null</c>.</exception>
 /// <exception cref="OptionsException">Thrown if an option is invalid.</exception>
 public FlexiCodeBlock Create(ProxyFencedLeafBlock proxyFencedBlock, BlockProcessor blockProcessor)
 {
     return(CreateCore(proxyFencedBlock, blockProcessor));
 }