public void ProcessParagraphUnit_WhenSettingsIsEnabled_UpdateSource() { // Arrange var testee = CreateTestee(); var paragraphUnitMock = A.Fake <IParagraphUnit>(); var sourceMock = A.Fake <IParagraph>(); A.CallTo(() => paragraphUnitMock.Source).Returns(sourceMock); var newSourceMock = A.Fake <IParagraph>(); var abstractMarkupDataMock = A.Fake <IAbstractMarkupData>(); A.CallTo(() => newSourceMock.Count).ReturnsNextFromSequence(1, 0); A.CallTo(() => newSourceMock[0]).Returns(abstractMarkupDataMock); var embeddedContentVisitor = A.Fake <IEmbeddedContentVisitor>(); A.CallTo(() => embeddedContentVisitor.GeneratedParagraph).Returns(newSourceMock); A.CallTo(() => _embeddedContentVisitorFactoryMock.CreateVisitor(A <IDocumentItemFactory> .Ignored, A <IPropertiesFactory> .Ignored, _textProcessorMock)).Returns(embeddedContentVisitor); A.CallTo(() => _embeddedContetnRegexSettingsMock.IsEnabled).Returns(true); // Act testee.ProcessParagraphUnit(paragraphUnitMock); // Assert A.CallTo(() => sourceMock.Clear()).MustHaveHappened(); A.CallTo(() => sourceMock.Add(abstractMarkupDataMock)).MustHaveHappened(); }
private void ProcessParagraph(IParagraph paragraph) { var embeddedContentVisitor = _embeddedContentVisitorFactory.CreateVisitor(ItemFactory, ItemFactory.PropertiesFactory, _textProcessor); foreach (var item in paragraph) { item.AcceptVisitor(embeddedContentVisitor); } var generatedParagraph = embeddedContentVisitor.GeneratedParagraph; CopyParagraphContents(generatedParagraph, paragraph); }