예제 #1
0
        protected bool Equals(Entity other)
        {
            var objsTypesAreEqual = GetType() == other.GetType();
            var rawTextAreEqual = RawText == other.RawText;
            var subEntitiesAreEqual = subEntities.SequenceEqual(other.subEntities);

            return objsTypesAreEqual && rawTextAreEqual && subEntitiesAreEqual;
        }
예제 #2
0
        public void ParseForSubEntities_should_keep_all_sub_trees_significant()
        {
            var firstBlock = new Entity[] { new ParsedTextEntity("t") }.ToList();
            var secondBlock = new Entity[] { new TestEntity("e"), new ParsedTextEntity("st") }.ToList();
            var correctAnswer = new Entity[]
            {
                new RawTextEntity(firstBlock, "t"),
                new TestEntity(secondBlock, "est")
            }.ToList();

            var result = Lang.ParseForSubEntities("test");

            CollectionAssert.AreEqual(correctAnswer, result);
        }
예제 #3
0
 public string Format(Entity entity)
 {
     var isTest = entity is TestEntity;
     var strToFormat = isTest ? "<test>{0}</test>" : "{0}";
     return string.Format(strToFormat, entity.GetSubEntitiesFormat(this));
 }
예제 #4
0
 private MarkdownDocument(Entity mdTreeRoot)
 {
     this.mdTreeRoot = mdTreeRoot;
 }