Beispiel #1
0
        public void SearchesEfficiently()
        {
            var callCount = 0;

            bool predicate(long x)
            {
                callCount++;
                return(x > 65465);
            }

            var result = new BinarySearchLong(predicate).FindFirst();

            Assert.AreEqual(65466, result);
            Assert.AreEqual(32, callCount);
        }
Beispiel #2
0
        public void FindsLastOpenInterval()
        {
            var result = new BinarySearchLong(x => x < 27).FindLast();

            Assert.AreEqual(26, result);
        }
Beispiel #3
0
        public void FindsFirstItemOpenInterval()
        {
            var result = new BinarySearchLong(x => x > 22).FindFirst();

            Assert.AreEqual(23, result);
        }