public void RemoveAt_Index0_IsSameAsRemoveFromFront() { var deque1 = new Deque <int>(new[] { 1, 2 }); var deque2 = new Deque <int>(new[] { 1, 2 }); deque1.RemoveAt(0); deque2.RemoveFromFront(); Assert.AreEqual(deque1, deque2); }
public void RemoveAt_LastIndex_IsSameAsRemoveFromBack() { var deque1 = new Deque <int>(new[] { 1, 2 }); var deque2 = new Deque <int>(new[] { 1, 2 }); deque1.RemoveAt(1); deque2.RemoveFromBack(); Assert.AreEqual(deque1, deque2); }
public void RemoveAt_RemovesElementAtIndex() { var deque = new Deque <int>(new[] { 1, 2, 3 }); deque.RemoveFromBack(); deque.AddToFront(0); deque.RemoveAt(1); Assert.AreEqual(new[] { 0, 2 }, deque); }
public void RemoveAt_IndexTooLarge_ActsLikeList() { var list = new List <int>(new[] { 1, 2, 3 }); Assert.Throws <ArgumentOutOfRangeException>(() => list.RemoveAt(list.Count)); var deque = new Deque <int>(new[] { 1, 2, 3 }); Assert.Throws <ArgumentOutOfRangeException>(() => deque.RemoveAt(deque.Count)); }
public void RemoveAt_NegativeIndex_ActsLikeList() { var list = new List <int>(new[] { 1, 2, 3 }); Assert.Throws <ArgumentOutOfRangeException>(() => list.RemoveAt(-1)); var deque = new Deque <int>(new[] { 1, 2, 3 }); Assert.Throws <ArgumentOutOfRangeException>(() => deque.RemoveAt(-1)); }