public void Should_Delete_Element_At_First_Occurence_Typeof_Prepend() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Prepend('A'); //head LinkedListHelpers <char> .Prepend('C'); //head.next LinkedListHelpers <char> .Prepend('Z'); //head.next.next LinkedListHelpers <char> .Prepend('Z'); //head.next.next.next LinkedListHelpers <char> .Prepend('A'); //head.next.next.next.next LinkedListHelpers <char> .Prepend('C'); //head.next.next.next.next.next LinkedListHelpers <char> .Remove('Z'); Assert.Equal(5, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { 'A', 'C', 'Z', 'A', 'C' }, LinkedListHelpers <char> .ToArray()); LinkedListHelpers <char> .Remove('A'); Assert.Equal(4, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { 'C', 'Z', 'A', 'C' }, LinkedListHelpers <char> .ToArray()); }
public void ShouldRemoveValuesAppearingMoreThanTwice() { // Arrange DynamicList <char> shoppingList = new DynamicList <char>(); shoppingList.Add('E'); shoppingList.Add('B'); shoppingList.Add('E'); shoppingList.Add('E'); shoppingList.Add('B'); shoppingList.Add('A'); shoppingList.Add('B'); //Act LinkedListHelpers.RemoveNodesRepeatingMoreThanTwoTimes(shoppingList); //Assert int expectedCount = 5; Assert.AreEqual(expectedCount, shoppingList.Count); //Assert individual values Assert.AreEqual(shoppingList[0], 'E'); Assert.AreEqual(shoppingList[1], 'B'); Assert.AreEqual(shoppingList[2], 'E'); Assert.AreEqual(shoppingList[3], 'B'); Assert.AreEqual(shoppingList[4], 'A'); }
public static void Main() { Node linked_list = LinkedListHelpers.createLinkedList( new string[] { "E", "B", "E", "E", "B", "A", "B" }); Node filteredList = LinkedListHelpers.removeDuplicate(linked_list); LinkedListHelpers.print(filteredList); }
public void Should_Not_Throw_When_Appending_At_Empty_Position() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .InsertAt('B', 10); Assert.Equal(0, LinkedListHelpers <char> .Count); }
public void Should_Delete_Element_From_Single_Element_List_With_Index() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); LinkedListHelpers <char> .RemoveAt(0); Assert.Equal(0, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { }, LinkedListHelpers <char> .ToArray());//empty }
public void Should_Not_Find_First() { LinkedListHelpers <char> .Clear(); Predicate <char> prediction = p => p == 'A'; char ch = 'A'; Assert.False(LinkedListHelpers <char> .TryFindFirst(prediction, out ch)); Assert.Equal(0, LinkedListHelpers <char> .Count); }
public void Should_Append_To_Empty_List() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); Assert.Equal('A', LinkedListHelpers <char> ._getElementAt(0)); Assert.Equal(1, LinkedListHelpers <char> .Count); LinkedListHelpers <char> .RemoveAt(0); Assert.Equal(0, LinkedListHelpers <char> .Count); }
public void Should_Append_To_NonEmpty_List() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); LinkedListHelpers <char> .Append('B'); Assert.Equal(2, LinkedListHelpers <char> .Count); Assert.NotEqual(new char[] { 'A', 'B' }, LinkedListHelpers <char> .ToArray()); Assert.Equal(new char[] { 'B', 'A' }, LinkedListHelpers <char> .ToArray()); }
public void Should_Not_Throw_When_Deleting_From_Empty_List_After_Appending_Some_Data() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); LinkedListHelpers <char> .Remove('A'); LinkedListHelpers <char> .Remove('A'); Assert.Equal(0, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { }, LinkedListHelpers <char> .ToArray()); }
public void TestLinkedListContainsTheCorrectLengthof2() { LinkedList <char> myList = new LinkedList <char>(); myList.AddFirst('a'); myList.AddFirst('a'); myList.AddFirst('a'); myList.AddFirst('a'); myList.AddFirst('a'); myList.AddFirst('a'); myList.AddFirst('a'); myList.AddFirst('a'); Assert.AreEqual(2, LinkedListHelpers.deletedDuplicateChar(myList).Count); }
public void LinkedListHelper_creates_linked_list() { //Test using the provided question Node linkedList = LinkedListHelpers.createLinkedList( new string[] { "E", "B", "E", "E", "B", "A", "B" }); using (var sw = new StringWriter()) { Console.SetOut(sw); LinkedListHelpers.print(linkedList); var result = sw.ToString().Trim(); Assert.AreEqual(result, "E->B->E->E->B->A->B"); } }
public void LinkedListHelper_removes_duplicates_where_its_words() { Node linkedList = LinkedListHelpers.createLinkedList( new string[] { "BA", "BA", "BA", "BE", "BI", "BE", "BE" }); Node filtered = LinkedListHelpers.removeDuplicate(linkedList); using (var sw = new StringWriter()) { Console.SetOut(sw); LinkedListHelpers.print(filtered); var result = sw.ToString().Trim(); Assert.AreEqual("BA->BA->BE->BI->BE", result); } }
public void LinkedListHelper_remove_duplicates_for_provided_test_case() { //Test using the provided question Node linkedList = LinkedListHelpers.createLinkedList( new string[] { "E", "B", "E", "E", "B", "A", "B" }); Node filtered = LinkedListHelpers.removeDuplicate(linkedList); using (var sw = new StringWriter()) { Console.SetOut(sw); LinkedListHelpers.print(filtered); var result = sw.ToString().Trim(); Assert.AreEqual("E->B->E->B->A", result); } }
public void LinkedListHelper_maintains_list_where_no_duplicates() { //Test using the provided question Node linkedList = LinkedListHelpers.createLinkedList( new string[] { "BA", "BA", "BE", "BI", "BE", }); Node filtered = LinkedListHelpers.removeDuplicate(linkedList); using (var sw = new StringWriter()) { Console.SetOut(sw); LinkedListHelpers.print(filtered); var result = sw.ToString().Trim(); Assert.AreEqual("BA->BA->BE->BI->BE", result); } }
public void Should_Delete_Element_At_The_End_Typeof_Int() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); //head.next.next LinkedListHelpers <char> .Append('B'); //head.next LinkedListHelpers <char> .Append('C'); //head LinkedListHelpers <char> .RemoveAt(2); Assert.Equal(2, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { 'C', 'B' }, LinkedListHelpers <char> .ToArray()); }
public void Should_Find_First_Assign_CH_A_() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Prepend('A'); Predicate <char> prediction = p => p == 'A'; char ch = '0'; Assert.True(LinkedListHelpers <char> .TryFindFirst(prediction, out ch)); Assert.Equal(1, LinkedListHelpers <char> .Count); Assert.Equal('A', ch); }
public void LinkedListHelper_LinkedListWithNoDuplicates_ReturnsList() { var linkedList = new SinglyLinkedList(); linkedList.Add("A"); linkedList.Add("E"); linkedList.Add("B"); LinkedListHelpers.RemoveNodesWithMoreThanTwoInstances(linkedList.Head); using (var sw = new StringWriter()) { Console.SetOut(sw); linkedList.PrintList(); var result = sw.ToString().Trim(); Assert.AreEqual(result, "B->E->A->"); } }
public void Should_Do_Nothing_No_Duplicates_Greater_Than_3() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); LinkedListHelpers <char> .Append('B'); LinkedListHelpers <char> .Append('E'); LinkedListHelpers <char> .Append('B'); LinkedListHelpers <char> .Append('E'); LinkedListHelpers <char> .removeDuplicates();//removes duplicates leaving two if any Assert.Equal(5, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { 'E', 'B', 'E', 'B', 'A' }, LinkedListHelpers <char> .ToArray()); }
public void Should_Not_Add_Elements_of_Type_Int_or_Any__To_Char() { LinkedListHelpers <char> .Clear(); LinkedListHelpers <char> .Append('A'); LinkedListHelpers <char> .Append('B'); LinkedListHelpers <char> .Append('E'); LinkedListHelpers <char> .Append('B'); LinkedListHelpers <char> .Append('E'); LinkedListHelpers <int> .Append(1); //this is not added LinkedListHelpers <char> .removeDuplicates(); //removes duplicates leaving two if any Assert.Equal(5, LinkedListHelpers <char> .Count); Assert.Equal(new char[] { 'E', 'B', 'E', 'B', 'A' }, LinkedListHelpers <char> .ToArray()); }