private void TestTraverserBackwardTraversal(IListTraverser <int> traverser) { for (int i = 4; i >= 0; --i) { Assert.AreEqual(i, traverser.Index); Assert.AreEqual(i + 1, traverser.Element); traverser.ToPrevious(); } Assert.IsTrue(traverser.AtStart); AssertInvalidOperationsOnTraverserAtStartOrEnd(traverser); }
private void AssertStateOfTraverserOnEmptyList(IListTraverser <int> traverser) { Assert.IsTrue(traverser.AtStart); Assert.IsTrue(traverser.AtEnd); Assert.IsFalse(traverser.OnElement); Assert.IsFalse(traverser.OnIndex); AssertInvalidOperationsOnTraverserAtStartOrEnd(traverser); traverser.ToNext(); Assert.IsTrue(traverser.AtStart); Assert.IsTrue(traverser.AtEnd); Assert.IsFalse(traverser.OnElement); Assert.IsFalse(traverser.OnIndex); AssertInvalidOperationsOnTraverserAtStartOrEnd(traverser); traverser.ToPrevious(); Assert.IsTrue(traverser.AtStart); Assert.IsTrue(traverser.AtEnd); Assert.IsFalse(traverser.OnElement); Assert.IsFalse(traverser.OnIndex); AssertInvalidOperationsOnTraverserAtStartOrEnd(traverser); }