예제 #1
0
 private static JToken SerializeDelta(Delta delta)
 {
     return(new JObject(new JProperty("ops", new JArray(delta.Ops))));
 }
예제 #2
0
 public Delta(Delta delta)
 {
     _ops = delta._ops.Select(op => op.DeepClone()).ToList();
 }
예제 #3
0
        public void Insert_ConsecutiveTexts_MergeOps()
        {
            var delta = Delta.New().Insert("a").Insert("b");

            Assert.That(delta.Ops, Is.EqualTo(Objs(new { insert = "ab" })));
        }
예제 #4
0
        public void Insert_Embed_OneOp()
        {
            var delta = Delta.New().Insert(1);

            Assert.That(delta.Ops, Is.EqualTo(Objs(new { insert = 1 })));
        }
예제 #5
0
        public void Delete_Positive_OneOp()
        {
            var delta = Delta.New().Delete(1);

            Assert.That(delta.Ops, Is.EqualTo(Objs(new { delete = 1 })));
        }
예제 #6
0
        public void Delete_ConsecutiveDeletes_MergeOps()
        {
            var delta = Delta.New().Delete(2).Delete(3);

            Assert.That(delta.Ops, Is.EqualTo(Objs(new { delete = 5 })));
        }
예제 #7
0
        public void Delete_Zero_EmptyOps()
        {
            var delta = Delta.New().Delete(0);

            Assert.That(delta.Ops, Is.Empty);
        }
예제 #8
0
        public void Insert_Text_OneOp()
        {
            var delta = Delta.New().Insert("test");

            Assert.That(delta.Ops, Is.EqualTo(Objs(new { insert = "test" })));
        }
예제 #9
0
        public void Retain_Positive_OneOp()
        {
            var delta = Delta.New().Retain(2);

            Assert.That(delta.Ops, Is.EqualTo(Objs(new { retain = 2 })));
        }
예제 #10
0
        public void Retain_Zero_EmptyOps()
        {
            var delta = Delta.New().Retain(0);

            Assert.That(delta.Ops, Is.Empty);
        }
예제 #11
0
        public void Insert_EmptyText_EmptyOps()
        {
            var delta = Delta.New().Insert("");

            Assert.That(delta.Ops, Is.Empty);
        }