public void Enumerator() { LinkedList ll = new LinkedList(); ll.Add("item1"); ll.Add("item2"); ll.Add("item3"); IEnumerator ienum = ll.GetEnumerator(); Assert.IsTrue(ienum.MoveNext()); Assert.IsTrue(ienum.Current.Equals("item1"), "Expected first element to be \"item1\" not " + ienum.Current); Assert.IsTrue(ienum.MoveNext()); Assert.IsTrue(ienum.Current.Equals("item2"), "Expected second element to be \"item2\" not " + ienum.Current); }
public void EnumeratorModification() { LinkedList ll = new LinkedList(); ll.Add("item1"); ll.Add("item2"); ll.Add("item3"); IEnumerator ienum = ll.GetEnumerator(); Assert.IsTrue(ienum.MoveNext()); ll.RemoveAt(0); Assert.Throws<InvalidOperationException>(() => ienum.MoveNext()); }
public void EnumeratorModification() { LinkedList ll = new LinkedList(); ll.Add("item1"); ll.Add("item2"); ll.Add("item3"); IEnumerator ienum = ll.GetEnumerator(); Assert.IsTrue(ienum.MoveNext()); ll.RemoveAt(0); ienum.MoveNext(); Assert.Fail("Expected enumerator to fail with InvalidOperationException"); }