Beispiel #1
0
        static void Main(string[] args)
        {
            //MyList<int> myList = new MyList<int>();
            //List<int> ts = new List<int>();
            //ts.Add(2);
            //ts.Add(5);
            //foreach (var item in ts)
            //{
            //    Console.WriteLine(item);
            //}

            MyLinkedList <ValueType> myLinkedList = new MyLinkedList <ValueType>();

            myLinkedList.Add(0, 4);
            myLinkedList.Add(1, 2);
            myLinkedList.Add(2, 19);

            //Console.WriteLine(myLinkedList.Get(2));
            //Console.WriteLine(myLinkedList.Contains(2));
            //Console.WriteLine(myLinkedList.IndexOf(2));
            //Console.WriteLine(myLinkedList.Count());
            //Console.WriteLine(myLinkedList.IndexOf(20));
            //Console.WriteLine(myLinkedList.Get(1));
            Console.ReadLine();
        }
 public void ContainTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(31);
     List.Add(9);
     Assert.AreEqual(List.Contains(31), true);
 }
 public void NotContainTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(31);
     List.Add(9);
     Assert.AreEqual(List.Contains(63), false);
 }
Beispiel #4
0
        public void Test_LinkedList_Remove()
        {
            // Arrange
            var linkedList = new MyLinkedList <int>();

            linkedList.Add(1);
            linkedList.Add(2);
            linkedList.Add(3);
            linkedList.Add(4);
            linkedList.Add(5);

            var expected = new int[] { 1, 2, 4, 5 };

            // Act
            linkedList.Remove(3);

            var actual  = new List <int>();
            var current = linkedList.Head.Next;

            while (current != null)
            {
                actual.Add(current.Key);
                current = current.Next;
            }

            // Assert
            Assert.Equal(4, linkedList.Count);
            for (int i = 0; i < expected.Length; i++)
            {
                Assert.Equal(expected[i], actual[i]);
            }
        }
Beispiel #5
0
    /// <summary>
    /// Handles the gridmovement of the snake
    /// </summary>
    private void gridHandler()
    {
        //Sets gridmovetimer plus equal to time passed since the last updated frame
        gridMoveTimer += Time.deltaTime;
        //IF gridmovetimer is greater or equal to gridmovetimermax
        if (gridMoveTimer >= gridMoveTimerMax)
        {
            //sets the gapPos to the snakehead position
            gapPosition = transform.position;
            //Sets gridposition plus equal to gridmovedir, snakehead gets a new position
            gridPosition += gridMoveDirection;
            //resets the gridmovetimer
            gridMoveTimer -= gridMoveTimerMax;

            //IF it´s true that the snake ate food
            if (ate)
            {
                //a new gameobject w. id snaketail is created in the linked list at the position where the snakehead was, lastly ate is set to false again
                GameObject g = Instantiate(SnakeTail, gapPosition, Quaternion.identity);
                tail.Add(0, g);
                ate = false;
            }
            else if (tail.Count > 0)             //ELSE IF the linked list size is greater then zero, which means if there´s already exsist snaketails
            {
                //we get the last snaketail in the list, adds it first in the list, removes the reference to the last snaketail in the list and puts the last snaketail in the gapPosition the snakehead left behind
                GameObject g = tail.GetLast(tail.Count);
                tail.Add(0, tail.GetLast(tail.Count));
                tail.Remove(tail.Count - 1);
                g.transform.position = gapPosition;
            }
        }
    }
 public void CopyConstructorTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(1);
     List.Add(2);
     MyList<int> List2 = new MyLinkedList<int>(List);
     Assert.AreEqual(List2, List);
 }
        public void NotContainTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(31);
            List.Add(9);
            Assert.AreEqual(List.Contains(63), false);
        }
        public void ContainTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(31);
            List.Add(9);
            Assert.AreEqual(List.Contains(31), true);
        }
 public void ClearTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(1);
     List.Add(2);
     List.Clear();
     Assert.AreEqual(List.Count, 0);
 }
        public void FindNotExistingElement()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(8);
            List.Add(61);
            Assert.AreEqual(List.Find(5), -1);
        }
        public void ClearTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(1);
            List.Add(2);
            List.Clear();
            Assert.AreEqual(List.Count, 0);
        }
        public void InsertMoreThanRangeTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(55);
            List.Add(41);
            List.Insert(79, 10);
            Assert.AreEqual(List[2], 79);
        }
        public void InsertTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(55);
            List.Add(41);
            List.Insert(79, 1);
            Assert.AreEqual(List[1], 79);
        }
        public void GetElementInRange()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(52);
            List.Add(95);
            Assert.AreEqual(List.Get(0), 52);
            Assert.AreEqual(List.Get(1), 95);
        }
        public void AddTest()
        {
            var linkedList = new MyLinkedList <int>();

            linkedList.Add(50);
            linkedList.Add(100);

            Assert.AreEqual(2, linkedList.Count);
        }
Beispiel #16
0
 public void C2Q1()
 {
     var result = new MyLinkedList<int>();
     result.Add(1); result.Add(2); result.Add(1); result.Add(3); result.Add(1); result.Add(4); result.Add(1);
     result.RemoveDuplicates();
     var test = new MyLinkedList<int>();
     test.Add(1); test.Add(2); test.Add(3); test.Add(4);
     Assert.AreEqual(result, test);
 }
        public void Get_index_greater_than_Count_throws_Exception()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");
            ll.Add("one");
            ll.Get(3);
        }
Beispiel #18
0
        private static MyLinkedList <int> CreateList()
        {
            var list = new MyLinkedList <int>();

            list.Add(10);
            list.Add(15);
            list.Add(20);
            return(list);
        }
Beispiel #19
0
 public void C2Q3()
 {
     var ll = new MyLinkedList<int>();
     ll.Add(1); ll.Add(2); ll.Add(3); ll.Add(4); ll.Add(5);
     ll.DeleteMiddle(ll.FindMiddleNode());
     var test = new MyLinkedList<int>();
     test.Add(1); test.Add(2); test.Add(4); test.Add(5);
     Assert.AreEqual(ll, test);
 }
        public void RemoveExistingElementTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(75);
            List.Add(57);
            List.Add(50);
            Assert.AreEqual(List.Remove(57), true);
            Assert.AreEqual(List.Contains(57), false);
        }
        public void CopyConstructorTest()
        {
            MyList <int> List = new MyLinkedList <int>();

            List.Add(1);
            List.Add(2);
            MyList <int> List2 = new MyLinkedList <int>(List);

            Assert.AreEqual(List2, List);
        }
        public void elements_are_added_in_order()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");

            Assert.AreEqual("one", ll.Get(0));
            Assert.AreEqual("two", ll.Get(1));
        }
        public void Add_updates_Count()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");
            ll.Add("one");

            Assert.AreEqual(3, ll.Count);
        }
 public void CopyToLinked()
 {
     int[] array = new int[2];
     MyList<int> List = new MyLinkedList<int>();
     List.Add(51);
     List.Add(94);
     List.CopyTo(array, 0);
     Assert.AreEqual(array[0], 51);
     Assert.AreEqual(array[1], 94);
 }
Beispiel #25
0
        public void TestReusable()
        {
            MyLinkedList <int> list = new MyLinkedList <int>();

            list.Add(1);
            list.Add(2);
            list.Add(3);
            int[] testDataOne = new int[] { 1, 2, 3 };
            Assert.AreEqual(true, Enumerable.SequenceEqual(testDataOne, list.ToArray()));
            Assert.AreEqual(true, Enumerable.SequenceEqual(testDataOne, list.ToArray()));
        }
        public void CopyToLinked()
        {
            int[]        array = new int[2];
            MyList <int> List  = new MyLinkedList <int>();

            List.Add(51);
            List.Add(94);
            List.CopyTo(array, 0);
            Assert.AreEqual(array[0], 51);
            Assert.AreEqual(array[1], 94);
        }
Beispiel #27
0
        public void TestGetByIndexReturnValidValue()
        {
            var LinkedList = new MyLinkedList <int>();

            LinkedList.Add(1);
            LinkedList.Add(2);
            var actual   = LinkedList.GetByIndex(0);
            var expected = 1;

            Assert.AreEqual(expected, actual);
        }
        public void AddAfter_ElementNotExist_InvalidOperationException()
        {
            //Arrange
            var testList = new MyLinkedList <int>();

            testList.Add(22);
            testList.Add(44);

            //Act
            testList.AddAfter(33, 55);
        }
        public void AddAfter_AddAfterLastElement_Added()
        {
            //Arrange
            var testList = new MyLinkedList <int>();

            testList.Add(22);
            testList.Add(44);

            //Act
            testList.AddAfter(44, 55);
        }
Beispiel #30
0
        public void Add_Adds_OnEmpty()
        {
            var itemToAdd = new MyLinkedListNode <string>("added");

            _emptyList.Add(itemToAdd);

            Assert.AreEqual(itemToAdd, _emptyList[0]);
            Assert.AreEqual(1, _emptyList.Count);

            Assert.True(EmptyListOkay);
        }
        public void Remove_doesnt_update_Count_if_item_not_present()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");
            ll.Add("one");
            ll.Remove("three");

            Assert.AreEqual(3, ll.Count);
        }
        public void Remove_removes_first_occurrence()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");
            ll.Add("one");
            ll.Remove("one");

            Assert.AreEqual("two", ll.Get(0));
            Assert.AreEqual("one", ll.Get(1));
        }
        public void Insert_last_works()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");
            ll.Add("three");
            ll.Insert("inserted", 3);

            Assert.AreEqual("three", ll.Get(2));
            Assert.AreEqual("inserted", ll.Get(3));
        }
Beispiel #34
0
        public void TestAsListMethodReturnProperValue()
        {
            var myList = new MyLinkedList <string>();

            myList.Add("No i cóż");
            myList.Add("że ze");
            myList.Add("Szwecji");
            var expected = "Szwecji";
            var actual   = myList.AsList()[2];

            Assert.AreEqual(expected, actual);
        }
        public void Remove_null_works()
        {
            var ll = new MyLinkedList <string>();

            ll.Add(null);
            ll.Add("two");
            ll.Add("one");
            ll.Remove(null);

            Assert.AreEqual("two", ll.Get(0));
            Assert.AreEqual("one", ll.Get(1));
        }
        public void Remove_in_the_middle_works()
        {
            var ll = new MyLinkedList <string>();

            ll.Add("one");
            ll.Add("two");
            ll.Add("three");
            ll.Remove("two");

            Assert.AreEqual("one", ll.Get(0));
            Assert.AreEqual("three", ll.Get(1));
        }
        public void Remove_ElementNotExist_InvalidOperationException()
        {
            //Arrange
            var testList = new MyLinkedList <int>();

            testList.Add(33);
            testList.Add(44);
            testList.Add(55);

            //Act
            testList.Remove(77);
        }
 public void InvalidCopyToLinked()
 {
     int[] array = new int[2];
     MyList<int> List = new MyLinkedList<int>();
     List.Add(51);
     List.Add(94);
     try
     {
         List.CopyTo(array, 2);
     }
     catch (IndexOutOfRangeException e)
     {
         StringAssert.Contains(e.Message, "Индекс вне диапазона.");
     }
 }
Beispiel #39
0
        static void Main(string[] args)
        {
            MyLinkedList<string> list = new MyLinkedList<string>();

            list.AddLast("pesho");
            list.AddLast("gosho");
            list.AddLast("anna");
            list.Add(1, "mariq");
            list.AddFirst("ala bala");

            foreach (var item in list)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine();

            list.Remove("anna");
            list.RemoveFirst();
            list.RemoveLast();

            foreach (var item in list)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine();

            list.Clear();

            Console.WriteLine(list.Count);
        }
Beispiel #40
0
 private static void AddElements(MyLinkedList<int> myLList, int count)
 {
     for (int i = 0; i < count; i++)
     {
         myLList.Add(i);
     }
 }
        public void AddTest()
        {
            int actualValue = 38;
            MyList<int> List = new MyLinkedList<int>();
            List.Add(actualValue);
            Assert.AreEqual(List.Count, 1);
            Assert.AreEqual(List[0], actualValue);

        }
 public void RemoveExistingElementTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(75);
     List.Add(57);
     List.Add(50);
     Assert.AreEqual(List.Remove(57), true);
     Assert.AreEqual(List.Contains(57), false);
 }
 public void GetElementInRange()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(52);
     List.Add(95);
     Assert.AreEqual(List.Get(0), 52);
     Assert.AreEqual(List.Get(1), 95);
 }
 public void GetElementOutOfRange()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(52);
     List.Add(95);
     try
     {
         List.Get(2);
     }
     catch (IndexOutOfRangeException e)
     {
         StringAssert.Contains(e.Message, "Индекс вне диапазона.");
     }
 }
 public void InsertTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(55);
     List.Add(41);
     List.Insert(79, 1);
     Assert.AreEqual(List[1], 79);
 }
 public void InsertMoreThanRangeTest()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(55);
     List.Add(41);
     List.Insert(79, 10);
     Assert.AreEqual(List[2], 79);
 }
 public void FindExistingElement()
 {
     MyList<int> List = new MyLinkedList<int>();
     List.Add(8);
     List.Add(61);
     Assert.AreEqual(List.Find(8), 0);
     Assert.AreEqual(List.Find(61), 1);
 }