private void TestTraverserForwardTraversal(IListTraverser <int> traverser) { for (int i = 0; i < 5; ++i) { Assert.AreEqual(i, traverser.Index); Assert.AreEqual(i + 1, traverser.Element); traverser.ToNext(); } Assert.IsTrue(traverser.AtEnd); 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); }