public void AddAfterKey_OneElem_NoKey() { //arrange Person p1 = new Person("1", 1); Person p2 = new Person("2", 2); MyLinkedList list = new MyLinkedList(p1); //act list.AddAfterKey(p2, p1); ////assert Assert.AreEqual(list.Count(), 1); }
public void AddAfterKey_ClearCollection() { //arrange Person p1 = new Person("1", 1); Person p2 = new Person("2", 2); MyLinkedList list = new MyLinkedList(); //act list.AddAfterKey(p1, p2); ////assert Assert.AreEqual(list.Count(), 0); }
public void AddAfterKey_OneElementInList() { //arrange Person p1 = new Person("1", 1); Person p2 = new Person("2", 2); MyLinkedList list = new MyLinkedList(p1); //act list.AddAfterKey(p1, p2); ////assert Assert.AreEqual(list.Count(), 2); Assert.AreEqual(list.Begin.next.data, p2); }
public void AddAfterKey_NoKey() { //arrange Person p1 = new Person("1", 1); Person p2 = new Person("2", 2); Person p3 = new Person("3", 3); Person p4 = new Person("4", 4); Person[] arr = { p1, p2, p3 }; MyLinkedList list = new MyLinkedList(arr); //act list.AddAfterKey(p4, p1); ////assert Assert.AreEqual(list.Count(), 3); }
public void AddAfterKey_EndElementKey() { //arrange Person p1 = new Person("1", 1); Person p2 = new Person("2", 2); Person p3 = new Person("3", 3); Person[] arr = { p1, p2 }; MyLinkedList list = new MyLinkedList(arr); //act list.AddAfterKey(p2, p3); ////assert Assert.AreEqual(list.Count(), 3); Assert.AreEqual(list.End.data, p3); }
public void AddAfterKey_Middle() { //arrange Person p1 = new Person("1", 1); Person p2 = new Person("2", 2); Person p3 = new Person("3", 3); Person p4 = new Person("4", 4); Person[] arr = { p1, p2, p4 }; MyLinkedList list = new MyLinkedList(arr); //act list.AddAfterKey(p2, p3); ////assert Assert.AreEqual(list.Begin.next.next.data, p3); }
private static void Task2() { { int menu = 1; MyLinkedList linlkedList = new MyLinkedList(); do { menu = Task1_Menu(); Console.Clear(); switch (menu) { case 1: //формирование коллеции int size = ReadNumber(-1, 50, "Введите размер однонаправленного списка: "); linlkedList = new MyLinkedList(size); //создание списка linlkedList.PrintList(); break; case 2: //добавление в коллекцию int add = ReadNumber(0, 4, "1. В начало" + "\n2. В конец" + "\n3. После элемента\n"); switch (add) { //в начало case 1: linlkedList.AddToBegin(MakeObject()); break; //в конец case 2: linlkedList.AddToEnd(MakeObject()); break; case 3: Console.WriteLine("Введите ключ для поиска: "); Person key = MakeObject(); Console.WriteLine("Введите элемент для добавления после ключа: "); Person addAfterKey = MakeObject(); linlkedList.AddAfterKey(key, addAfterKey); break; } linlkedList.PrintList(); break; case 3: Console.WriteLine("Удаление по ключу:"); linlkedList.RemoveKey(MakeObject()); linlkedList.PrintList(); break; case 4: //клонирование int clone = ReadNumber(0, 3, "1. Глубокое клонирование" + "\n2. Поверхностное\n"); switch (clone) { //полное case 1: MyLinkedList listClone = linlkedList.Clone(); Console.WriteLine("Копия создана"); listClone.PrintList(); break; //поверхностниое case 2: MyLinkedList listShallowCopy = linlkedList.ShallowCopy(); Console.WriteLine("Копия создана"); listShallowCopy.PrintList(); break; } break; case 5: Console.WriteLine($"Размер коллекции: {linlkedList.Count()}"); Console.ReadKey(); //Подсчет количества объектов break; case 6: linlkedList.PrintList(); //печать break; } Console.Clear(); } while (menu != 7); linlkedList.RemoveCollection(); } }