public void AdjacentFindTest2() { char[] data = { 'x', 'r', 'q', 'w', 'e', 'v', 'y', 't' }; char expected = 't'; char actual = '?'; using (IInputIterator <char> inputIterator = new InputIterator <char>(data)) { actual = Algorithm.AdjacentFind(inputIterator); } Assert.IsTrue(expected == actual); }
[Test] public void AdjacentFind_ForwardIterator() { int[] array = Constants.TEST_INT_ARRAY; ForwardIterator <int> begin = IteratorUtil.Begin(array); ForwardIterator <int> end = IteratorUtil.End(array); ForwardIterator <int> iter = Algorithm.AdjacentFind(begin, end); Assert.AreEqual(6, IteratorUtil.Distance(begin, iter)); Assert.AreEqual(array[6], iter.Read()); iter = Algorithm.AdjacentFind(IteratorUtil.Begin(array), IteratorUtil.End(array), EqualityComparer <int> .Default); Assert.AreEqual(6, IteratorUtil.Distance(begin, iter)); Assert.AreEqual(array[6], iter.Read()); iter = Algorithm.AdjacentFind(IteratorUtil.Begin(array), IteratorUtil.End(array), AreEqual); Assert.AreEqual(6, IteratorUtil.Distance(begin, iter)); Assert.AreEqual(array[6], iter.Read()); }