示例#1
0
        public void TestSubList()
        {
            CopyOnWriteArrayList <Object> a = PopulatedArray(10);

            Assert.IsTrue(a.SubList(1, 1).IsEmpty());

            for (int j = 0; j < 9; ++j)
            {
                for (int i = j; i < 10; ++i)
                {
                    List <Object> b = a.SubList(j, i);
                    for (int k = j; k < i; ++k)
                    {
                        Assert.AreEqual(k, b.Get(k - j));
                    }
                }
            }

            List <Object> s = a.SubList(2, 5);

            Assert.AreEqual(s.Size(), 3);
            s.Set(2, m1);
            Assert.AreEqual(a.Get(4), m1);
            s.Clear();
            Assert.AreEqual(a.Size(), 7);
        }
示例#2
0
 public void TestSubList3IndexOutOfBoundsException()
 {
     try
     {
         CopyOnWriteArrayList <Object> c = new CopyOnWriteArrayList <Object>();
         c.SubList(3, 1);
         ShouldThrow();
     }
     catch (IndexOutOfRangeException)
     {}
 }
示例#3
0
 public void TestSubList2IndexOutOfBoundsException()
 {
     try
     {
         CopyOnWriteArrayList <Object> c = new CopyOnWriteArrayList <Object>();
         c.Add("asdasd");
         c.SubList(1, 100);
         ShouldThrow();
     }
     catch (IndexOutOfRangeException)
     {}
 }