Пример #1
0
        public void VisitTagPair(ITagPair tagPair)
        {
            var newTagPair = _itemFactory.CreateTagPair(tagPair.StartTagProperties, tagPair.EndTagProperties);

            _currentContainer.Add(newTagPair);
            _currentContainer = newTagPair;

            VisitChildElements(tagPair);

            _currentContainer = newTagPair.Parent;
        }
        public void VisitTagPair(ITagPair tagPair)
        {
            var tagPair2 = _itemFactory.CreateTagPair(tagPair.StartTagProperties, tagPair.EndTagProperties);

            _currentContainer.Add(tagPair2);
            _currentContainer = tagPair2;
            foreach (var current in tagPair)
            {
                current.AcceptVisitor(this);
            }
            _currentContainer = tagPair2.Parent;
        }
        public void VisitText_WhenTextHasTags_ShouldAddTagPair()
        {
            // Arrange
            var testee = CreateTestee();

            A.CallTo(() => _textProcessorMock.Process(TexBeforeProcessing)).Returns(new List <IFragment>
            {
                new Fragment(InlineType.StartTag, "start", SegmentationHint.Undefined, true),
                new Fragment(InlineType.EndTag, "end", SegmentationHint.Undefined, true)
            });

            var startTagPropertiesMock = A.Fake <IStartTagProperties>();

            A.CallTo(() => _propertiesFactoryMock.CreateStartTagProperties("start")).Returns(startTagPropertiesMock);

            var endTagPropertiesMock = A.Fake <IEndTagProperties>();

            A.CallTo(() => _propertiesFactoryMock.CreateEndTagProperties("end")).Returns(endTagPropertiesMock);

            var tagPairMock = A.Fake <ITagPair>();

            A.CallTo(() => _itemFactoryMock.CreateTagPair(startTagPropertiesMock, endTagPropertiesMock)).Returns(tagPairMock);

            // Act
            testee.VisitText(_textMock);

            // Assert
            A.CallTo(() => _sourceParagraphMock.Add(tagPairMock)).MustHaveHappened();
        }
Пример #4
0
        public IAbstractMarkupData CreateTagPair(string tagId, string tagContent)
        {
            var tagName = GetStartTagName(tagContent, out var refId);

            var startTagProperties = _propertiesFactory.CreateStartTagProperties(tagContent);

            if (ExistingTagPairIds.Contains(startTagProperties.TagId.Id))
            {
                if (!ExistingTagPairIds.Contains(tagId))
                {
                    startTagProperties.TagId = new TagId(tagId);
                }
                else
                {
                    startTagProperties.TagId = new TagId(GetUniqueTagPairId());
                }
            }

            if (!ExistingTagPairIds.Contains(startTagProperties.TagId.Id))
            {
                ExistingTagPairIds.Add(startTagProperties.TagId.Id);
            }

            var endTagProperties = _propertiesFactory.CreateEndTagProperties("</" + tagName + ">");

            //TODO formatting example
            //var xItem = _formattingFactory.CreateFormattingItem("italic", "True");
            //x.Formatting = _formattingFactory.CreateFormatting();
            //x.Formatting.Add(xItem);

            var tagPair = _factory.CreateTagPair(startTagProperties, endTagProperties);

            return(tagPair);
        }
Пример #5
0
        public IAbstractMarkupData CreateTagPair(string tagId, string tagContent)
        {
            var tagName = GetStartTagName(tagContent, out var refId);

            var startTagProperties = _propertiesFactory.CreateStartTagProperties(tagContent);
            //if (!string.IsNullOrEmpty(tagId))
            //{
            //	startTagProperties.TagId = new TagId(tagId);
            //}

            var endTagProperties = _propertiesFactory.CreateEndTagProperties("</" + tagName + ">");

            //TODO formatting example
            //var xItem = _formattingFactory.CreateFormattingItem("italic", "True");
            //x.Formatting = _formattingFactory.CreateFormatting();
            //x.Formatting.Add(xItem);

            var tagPair = _factory.CreateTagPair(startTagProperties, endTagProperties);

            return(tagPair);
        }