public void SetUp()
 {
     arr = new MyDeque <int>();
     arr.AddToBack(5);
     arr.AddToBack(19);
     arr.AddToFront(7);
 }
 public void ShowAddToStart(MyDeque <MyString> myStrings, string str, string password)
 {
     Console.WriteLine("The string was added to the collection successfully!");
     myStrings.AddToFirst(new MyString(str, password));
     Thread.Sleep(1000);
     ShowMenu(myStrings);
 }
 public void ShowRemoveFromStart(MyDeque <MyString> myStrings)
 {
     Console.WriteLine("The string was removed from the collection successfully");
     myStrings.RemoveFirst();
     Thread.Sleep(1200);
     ShowMenu(myStrings);
 }
        public void ShowWholeCollection(MyDeque <MyString> myStrings)
        {
            Console.Clear();

            foreach (MyString str in myStrings)
            {
                Console.WriteLine(str.EncryptedString);
                Thread.Sleep(700);
            }

            Console.WriteLine("\n0. Return to main menu");

            int choice = Convert.ToInt32(Console.ReadLine());

            if (choice == 0)
            {
                ShowMenu(myStrings);
            }
            else
            {
                Console.WriteLine("Wrong option");
                Thread.Sleep(1500);
                ShowMenu(myStrings);
            }
        }
Beispiel #5
0
        public void Test_CompareTo()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueLast(1);
            deq.EnqueueLast(2);
            deq.EnqueueLast(3);
            deq.EnqueueLast(4);

            MyDeque <int> deq2 = new MyDeque <int>();

            deq2.EnqueueFirst(2);
            deq2.EnqueueFirst(2);

            Assert.AreEqual(deq.CompareTo(deq2), 1);

            deq2.EnqueueFirst(2);
            deq2.EnqueueFirst(2);

            Assert.AreEqual(deq.CompareTo(deq2), 0);

            deq2.EnqueueFirst(2);
            deq2.EnqueueFirst(2);

            Assert.AreEqual(deq.CompareTo(deq2), -1);
        }
        // From MyString -> GetDiscElement

        public void ShowDiscElement(MyDeque <MyString> myStrings, char disc)
        {
            Console.Clear();

            MyString Aim = myStrings.GetDiscElement(disc);

            Console.WriteLine($"Disc {disc} contains : " + Aim.EncryptedString);
        }
Beispiel #7
0
        public void Test_of_constructor()
        {
            MyDeque <int> deq      = new MyDeque <int>();
            int           expected = 0;
            int           actual   = deq.Count;

            Assert.AreEqual(expected, actual);
        }
Beispiel #8
0
        /// <summary>
        /// Заполнение дека случайными целыми числами.
        /// </summary>
        /// <param name="queue">Заполняемый дек</param>
        public static void FillRandom(MyDeque <int> deque)
        {
            Random random = new Random();

            for (int i = 0; i < 15; i++)
            {
                deque.PushTail(random.Next(-15, 16));
            }
        }
Beispiel #9
0
        public void Test_IsEmpty()
        {
            MyDeque <int> deq = new MyDeque <int>();

            Assert.AreEqual(deq.IsEmpty, true);

            deq.EnqueueFirst(1);
            Assert.AreEqual(deq.IsEmpty, false);
        }
Beispiel #10
0
        /// <summary>
        /// Приведение всех значений дека к абсолютному виду.
        /// </summary>
        /// <param name="deque">Изменяемый дек</param>
        public static void ToAbs(MyDeque <int> deque)
        {
            for (int i = 0; i < deque.Count; i++)
            {
                int current = deque.Pop();

                deque.PushTail(Math.Abs(current));
            }
        }
Beispiel #11
0
        /// <summary>
        /// Вывод элементов дека в консоль.
        /// </summary>
        /// <param name="queue">Выводимый дек</param>
        public static void OutputConsole(MyDeque <int> deque)
        {
            foreach (int element in deque)
            {
                Console.WriteLine(element);
            }

            Console.WriteLine();
        }
        public void RemoveFromFront_RemovingFromEmptyCollection_ExceptionExpected()
        {
            // Arrange
            var a = new MyDeque <int>();

            // Act

            // Assert
            Assert.Throws <InvalidOperationException>(() => a.RemoveFromFront());
        }
Beispiel #13
0
        public void Test_EndqueueFirst()
        {
            MyDeque <string> deq = new MyDeque <string>();

            deq.EnqueueFirst("Первый");
            deq.EnqueueFirst("Второй");
            deq.EnqueueFirst("Третий");
            Assert.AreEqual(deq.Count, 3);
            Assert.AreNotEqual(deq.PeekFirst(), deq.PeekLast());
        }
        public void ToArray_ConvertEmptyCollectionToArray_ExpectedException()
        {
            // Arrage
            var a = new MyDeque <int>();

            // Act

            //Assert
            Assert.Throws <InvalidOperationException>(() => a.ToArray());
        }
        public void PeekBack_GetLastElementFromEmptyCollection_ExceptionExpected()
        {
            // Arrage
            var a = new MyDeque <int>();

            // Act

            // Assert
            Assert.Throws <InvalidOperationException>(() => a.PeekBack());
        }
Beispiel #16
0
        public void Test_Contains()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueFirst(1);
            deq.EnqueueFirst(2);
            deq.EnqueueFirst(3);
            deq.EnqueueFirst(4);
            Assert.AreEqual(deq.Contains(2), true);
        }
Beispiel #17
0
        public void Test_PeekLast()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueLast(1);
            deq.EnqueueLast(2);
            deq.EnqueueLast(3);
            deq.EnqueueLast(4);
            Assert.AreEqual(deq.PeekLast(), 4);
        }
        public void AddToFront_NullAsParameter_ExceptionExpected()
        {
            // Arrange
            var a = new MyDeque <string>();

            // Act

            // Assert
            Assert.Throws <ArgumentNullException>(() => a.AddToFront(null));
        }
Beispiel #19
0
        public void Test_EnqueueLast()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueLast(1);
            deq.EnqueueLast(2);
            deq.EnqueueLast(3);
            deq.EnqueueLast(4);
            Assert.AreEqual(deq.Count, 4);
            Assert.AreNotEqual(deq.PeekFirst(), deq.PeekLast());
        }
        public void IsEmpty_CheckEmptyCollection_ExpectedTrue()
        {
            // Arrage
            var a = new MyDeque <int>();

            // Act
            bool actual = a.IsEmpty();

            // Assert
            Assert.IsTrue(actual);
        }
        public void AddToFront_AddElement_CheckFirstElement <T>(T expected)
        {
            // Arrange
            MyDeque <T> a = new MyDeque <T>();

            // Act
            a.AddToFront(expected);
            T actual = a.Head.Data;

            // Assert
            Assert.AreEqual(expected, actual);
        }
        public void AddToBack_AddElement_CheckLastElement <T>(T expected)
        {
            // Arrange
            MyDeque <T> a = new MyDeque <T>();

            // Act
            a.AddToBack(expected);
            T actual = a.Tail.Data;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #23
0
        public void Test_Count()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueFirst(1);
            deq.EnqueueFirst(2);
            deq.EnqueueFirst(3);
            deq.EnqueueFirst(4);
            Assert.AreEqual(deq.Count, 4);

            deq.Clear();
            Assert.AreEqual(deq.Count, 0);
        }
Beispiel #24
0
        public void Test_Clone()
        {
            MyDeque <int> deq1 = new MyDeque <int>();
            MyDeque <int> deq2 = new MyDeque <int>();

            deq1.EnqueueLast(1);
            deq1.EnqueueLast(2);
            deq1.EnqueueLast(3);
            deq1.EnqueueLast(4);

            deq2 = (MyDeque <int>)deq1.Clone();

            Assert.AreEqual(deq1.Count, deq2.Count);
            Assert.AreEqual(deq1.PeekLast(), deq2.PeekLast());
        }
        public void Size_AddElements_GetResult(int expected)
        {
            // Arrange
            MyDeque <int> a = new MyDeque <int>();

            // Act
            for (int i = 0; i < expected; i++)
            {
                a.AddToBack(i);
            }
            int actual = a.Size;

            // Assert
            Assert.AreEqual(expected, actual);
        }
Beispiel #26
0
        public static void Main()
        {
            MyDeque <int> deque = new MyDeque <int>();

            FillRandom(deque);

            Console.WriteLine("Исходный дек целых чисел:");

            OutputConsole(deque);
            Swap(deque, deque.Max(), deque.Min());

            Console.WriteLine("Дек с поменянными местами макс. и мин. элементами:");

            OutputConsole(deque);
        }
Beispiel #27
0
        static void Main()
        {
            MyDeque <int> deque = new MyDeque <int>();

            FillRandom(deque);

            Console.WriteLine("Исходный дек целых чисел:");

            OutputConsole(deque);

            ToAbs(deque);

            Console.WriteLine("Дек с абсолютными значениями:");

            OutputConsole(deque);
        }
Beispiel #28
0
        public void Test_DequeueLast()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueLast(1);
            deq.EnqueueLast(2);
            deq.EnqueueLast(3);
            deq.EnqueueLast(4);
            int expected = deq.PeekLast();
            int count1   = deq.Count;
            int actual   = deq.DequeueLast();
            int count2   = deq.Count;

            Assert.AreEqual(actual, expected);
            Assert.AreNotEqual(count1, count2);
        }
Beispiel #29
0
        static void Main(string[] args)
        {
            MyDeque <MyString> myStrings = new MyDeque <MyString>();

            MyString str1 = new MyString("FirstString", "111");

            myStrings.AddToLast(str1);

            MyString str2 = new MyString("SecondString", "222");

            myStrings.AddToLast(str2);

            MyString str3 = new MyString("ThirdString", "333");

            myStrings.AddToLast(str3);

            MyString str4 = new MyString("FourthString", "444");

            myStrings.AddToLast(str4);

            MyString str5 = new MyString("FifthString", "555");

            myStrings.AddToLast(str5);

            MyConsole console = new MyConsole();

            console.ShowMenu(myStrings);

            //foreach (MyString str in myStrings)
            //{
            //    Console.WriteLine(str.GetEncryptedString() + "\n");
            //}

            //Console.WriteLine("------------------");

            //foreach (MyString ostr in myStrings)
            //{
            //    Console.WriteLine(ostr.GetMainString("11") + "\n");
            //}

            //Console.WriteLine("------------------");

            //MyConsole.ShowIndexElement(myStrings, 2);
        }
Beispiel #30
0
        public void Test_GetEnumerator()
        {
            MyDeque <int> deq = new MyDeque <int>();

            deq.EnqueueLast(1);
            deq.EnqueueLast(2);
            deq.EnqueueLast(3);
            deq.EnqueueLast(4);

            int[] numbers = new int[deq.Count];

            foreach (int i in deq)
            {
                for (int n = 0; n < numbers.Length; n++)
                {
                    numbers[n] = i;
                }
            }

            Assert.AreEqual(deq.PeekLast(), numbers[deq.Count - 1]);
        }