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 GetItem_Split_ReadsElements() { var deque = new Deque <int>(new[] { 1, 2, 3 }); deque.RemoveFromBack(); deque.AddToFront(0); Assert.AreEqual(0, deque[0]); Assert.AreEqual(1, deque[1]); Assert.AreEqual(2, deque[2]); }
public void RemoveFromBack_Empty_ActsLikeQueue() { var queue = new Queue <int>(); Assert.Throws <InvalidOperationException>(() => queue.Dequeue()); var deque = new Deque <int>(); Assert.Throws <InvalidOperationException>(() => deque.RemoveFromBack()); }
public void IndexOf_ItemPresentAndSplit_ReturnsItemIndex() { var deque = new Deque <int>(new[] { 1, 2, 3 }); deque.RemoveFromBack(); deque.AddToFront(0); Assert.AreEqual(0, deque.IndexOf(0)); Assert.AreEqual(1, deque.IndexOf(1)); Assert.AreEqual(2, deque.IndexOf(2)); }
public void SetItem_Split_WritesElements() { var deque = new Deque <int>(new[] { 1, 2, 3 }); deque.RemoveFromBack(); deque.AddToFront(0); deque[0] = 7; deque[1] = 11; deque[2] = 13; Assert.AreEqual(new[] { 7, 11, 13 }, deque); }
public void NongenericContains_ItemPresentAndSplit_ReturnsTrue() { var deque_ = new Deque <int>(new[] { 1, 2, 3 }); deque_.RemoveFromBack(); deque_.AddToFront(0); var deque = deque_ as IList; Assert.True(deque.Contains(0)); Assert.True(deque.Contains(1)); Assert.True(deque.Contains(2)); Assert.False(deque.Contains(3)); }
public void Contains_ItemPresentAndSplit_ReturnsTrue() { var deque = new Deque <int>(new[] { 1, 2, 3 }); deque.RemoveFromBack(); deque.AddToFront(0); var deq = deque as ICollection <int>; Assert.True(deq.Contains(0)); Assert.True(deq.Contains(1)); Assert.True(deq.Contains(2)); Assert.False(deq.Contains(3)); }