public void Foreach_DoubleArray_DoubleArray(double[] array)
        {
            CustomCollections.Queue <double> queue = InsertToQueue <double>(array);

            double[] result = GetFromQueue <double>(queue);

            Assert.AreEqual(array, result);
        }
        public void Foreach_CharArray_CharArray(char[] array)
        {
            CustomCollections.Queue <char> queue = InsertToQueue <char>(array);

            char[] result = GetFromQueue <char>(queue);

            Assert.AreEqual(array, result);
        }
        public void Foreach_IntArray_IntArray(int [] array)
        {
            CustomCollections.Queue <int> queue = InsertToQueue <int>(array);

            int[] result = GetFromQueue <int>(queue);

            Assert.AreEqual(array, result);
        }
        private T[] GetFromQueue <T>(CustomCollections.Queue <T> queue)
        {
            List <T> list = new List <T>();

            foreach (T element in queue)
            {
                list.Add(element);
            }

            return(list.ToArray());
        }
        private CustomCollections.Queue <T> InsertToQueue <T>(T[] array)
        {
            CustomCollections.Queue <T> queue = new CustomCollections.Queue <T>();

            for (int i = 0; i < array.Length; i++)
            {
                queue.Enqueue(array[i]);
            }

            return(queue);
        }