public void CopyTo_CopyToArrayClassWithInvalidIndex_ShouldThrowArgumentOutOfRangeException() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); Array array = new int[2]; Assert.Catch(typeof(ArgumentOutOfRangeException), () => queue.CopyTo(array, -1)); }
public void CopyTo_CopyToNullArray_ShouldThrowArgumentNullException() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); int[] array = null; Assert.Catch(typeof(ArgumentNullException), () => queue.CopyTo(array, 0)); }
public void CopyTo_QueueCopyToArrayClassWithTheSameSize_ArrayEqualQueue() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); Array array = new int[2]; queue.CopyTo(array, 0); CollectionAssert.AreEqual(array, queue); }
public void CopyTo_QueueCopyToLargerArray_ArrayIsSupersetOfQueue() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); int[] array = new int[3]; array[2] = 100; queue.CopyTo(array, 0); CollectionAssert.IsSupersetOf(array, queue); }
public void CopyTo_QueueCopyToLargerArrayClass_ArrayIsSupersetOfQueue() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); Array array = new int[3]; array.SetValue(100, 2); queue.CopyTo(array, 0); CollectionAssert.IsSupersetOf(array, queue); }
public void CopyTo_QueueSize2CopyToArrayClassSize3Index2_ShouldThrowArgumentException() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); Array array = new int[3]; try { queue.CopyTo(array, 2); } catch (ArgumentException) { return; } Assert.Fail(); }
public void CopyTo_CopyToSmallArrayClass_ShouldThrowArgumentException() { var queue = new MyQueue <int>(); queue.Enqueue(3); queue.Enqueue(-2); Array array = new int[1]; try { queue.CopyTo(array, 0); } catch (ArgumentException) { return; } Assert.Fail(); }
static void Main(string[] args) { MyQueue <int> newQueue = new MyQueue <int>(); newQueue.DoClear += (obj, arg) => Console.WriteLine("Queue cleared."); newQueue.DoDequeue += (obj, arg) => Console.WriteLine("Dequeue elem : {0}", arg.data); newQueue.DoEnqueue += (obj, arg) => Console.WriteLine("Enqueue elem : {0}", arg.data); newQueue.Enqueue(1); newQueue.Enqueue(2); newQueue.Enqueue(3); newQueue.Enqueue(4); Console.WriteLine(newQueue.Contains(2)); Console.WriteLine(newQueue.Contains(10)); Console.WriteLine(newQueue.ToString()); newQueue.Dequeue(); Console.WriteLine(newQueue.ToString()); int[] newArray = newQueue.ToArray(); Console.WriteLine("\nQueue:"); foreach (int elem in newQueue) { Console.Write(elem + " "); } Console.WriteLine(); Console.WriteLine("\nArray:"); foreach (int elem in newArray) { Console.Write(elem + " "); } Console.WriteLine(); try { newQueue.CopyTo(null, 0); } catch (Exception exc) { Console.WriteLine(exc.Message); } try { int[] newArray1 = new int[1]; newQueue.CopyTo(newArray1, -1); } catch (Exception exc) { Console.WriteLine(exc.Message); } try { int[] newArray1 = new int[1]; newQueue.CopyTo(newArray1, 0); } catch (Exception exc) { Console.WriteLine(exc.Message); } newQueue.Clear(); try { newQueue.Dequeue(); } catch (Exception exc) { Console.WriteLine(exc.Message); } Console.WriteLine("Press any key to continue..."); Console.ReadKey(); }