Ejemplo n.º 1
0
        public void ReplaceAtEnd()
        {
            SegmentCollection segs1 = new SegmentCollection();
            Segment           s1, s2, s3;

            s1 = new Segment(buf1, 0, 4);
            s2 = new Segment(buf2, 7, 7);
            s3 = new Segment(buf2, 8, 8);
            segs1.Append(s1);
            //segs1.List.Display();
            segs1.DeleteRange(4, 4);
            //segs1.List.Display();
            segs1.Append(s2);
            //segs1.List.Display();
            segs1.DeleteRange(4, 4);
            //segs1.List.Display();
            segs1.Append(s3);
            //segs1.List.Display();

            Assert.AreEqual(2, segs1.List.Count, "#1");
            Assert.AreEqual(3, (segs1.List[0] as Segment).End, "#2");
            Assert.AreEqual(8, (segs1.List[1] as Segment).Start, "#3");
            Assert.AreEqual(8, (segs1.List[1] as Segment).End, "#4");
        }
Ejemplo n.º 2
0
        public void DeleteFromSegmentCollectionTest4()
        {
            SegmentCollection segs1 = new SegmentCollection();
            Segment           s1;

            s1 = new Segment(buf1, 0, 8);
            segs1.Append(s1);
            SegmentCollection del = segs1.DeleteRange(0, 8);

            Assert.AreEqual(0, segs1.List.Count, "#0");

            Assert.AreEqual(1, del.List.Count, "#5");
            Assert.AreEqual(0, ((Segment)del.List[0]).Start, "#6");
            Assert.AreEqual(8, ((Segment)del.List[0]).End, "#7");
        }
Ejemplo n.º 3
0
        public void DeleteFromSegmentCollectionTest1()
        {
            SegmentCollection segs1 = new SegmentCollection();
            Segment           s1, s2, s3, s4;

            s1 = new Segment(buf1, 0, 5);
            s2 = new Segment(buf2, 6, 8);
            s3 = new Segment(buf2, 0, 5);
            s4 = new Segment(buf1, 6, 8);
            segs1.Append(s1);
            segs1.Append(s2);
            segs1.Append(s3);
            segs1.Append(s4);

            segs1.DeleteRange(7, 15);
            Assert.AreEqual(3, segs1.List.Count, "#1");
            Assert.AreEqual(6, ((Segment)segs1.List[0]).Size, "#2");
            Assert.AreEqual(6, ((Segment)segs1.List[1]).Start, "#3");
            Assert.AreEqual(6, ((Segment)segs1.List[1]).End, "#4");
            Assert.AreEqual(7, ((Segment)segs1.List[2]).Start, "#5");
            Assert.AreEqual(8, ((Segment)segs1.List[2]).End, "#6");
        }
Ejemplo n.º 4
0
        public void InsertToSegmentCollectionThenDeleteTest()
        {
            SegmentCollection segs1 = new SegmentCollection();
            Segment           s1, s2;

            s1 = new Segment(buf1, 0, 2);
            s2 = new Segment(buf1, 3, 5);
            segs1.Append(s1);
            SegmentCollection segs2 = new SegmentCollection();

            segs2.Append(s2);
            segs1.Insert(segs2, 2);

            segs1.DeleteRange(2, 4);

            long map;

            List <Segment> .Node n;
            Segment s = segs1.FindSegment(0, out map, out n);

            Assert.IsNotNull(s, "#1");
            Assert.AreEqual(0, map, "#2");
            Assert.AreEqual(0, s.Start, "#3");
        }