コード例 #1
0
        static void Test_BinarySearch()
        {
            SplitArray <int> ary = new SplitArray <int>(4);

            ary.Clear();
            TestUtl.AssertEquals(-1, ary.BinarySearch(1234));

            ary.Clear();
            ary.Add(3);
            TestUtl.AssertEquals(~(0), ary.BinarySearch(2));
            TestUtl.AssertEquals((0), ary.BinarySearch(3));
            TestUtl.AssertEquals(~(1), ary.BinarySearch(4));

            ary.Clear();
            ary.Add(1, 3);
            TestUtl.AssertEquals(~(0), ary.BinarySearch(0));
            TestUtl.AssertEquals((0), ary.BinarySearch(1));
            TestUtl.AssertEquals(~(1), ary.BinarySearch(2));
            TestUtl.AssertEquals((1), ary.BinarySearch(3));
            TestUtl.AssertEquals(~(2), ary.BinarySearch(4));

            SplitArray <System.Drawing.Point> points = new SplitArray <System.Drawing.Point>(4);

            points.Add(new System.Drawing.Point());
            try
            {
                points.BinarySearch(new System.Drawing.Point(1, 1));
                throw new AssertException();
            }
            catch (Exception ex)
            {
                TestUtl.AssertExceptionType <ArgumentException>(ex);
            }
        }
コード例 #2
0
        public void BinarySearch()
        {
            SplitArray <int> ary = new SplitArray <int>(4);

            ary.Clear();
            Assert.AreEqual(-1, ary.BinarySearch(1234));

            ary.Clear();
            ary.Add(3);
            Assert.AreEqual(~(0), ary.BinarySearch(2));
            Assert.AreEqual((0), ary.BinarySearch(3));
            Assert.AreEqual(~(1), ary.BinarySearch(4));

            ary.Clear();
            ary.Add(1, 3);
            Assert.AreEqual(~(0), ary.BinarySearch(0));
            Assert.AreEqual((0), ary.BinarySearch(1));
            Assert.AreEqual(~(1), ary.BinarySearch(2));
            Assert.AreEqual((1), ary.BinarySearch(3));
            Assert.AreEqual(~(2), ary.BinarySearch(4));

            SplitArray <System.Drawing.Point> points = new SplitArray <System.Drawing.Point>(4);

            points.Add(new System.Drawing.Point());
            MyAssert.Throws <ArgumentException>(delegate {
                points.BinarySearch(new System.Drawing.Point(1, 1));
            });
        }