def test_linked_list_insert_head(self): linked_list = LinkedList() linked_list.insert_head(25) self.assertIsNotNone(linked_list) self.assertTrue(linked_list.__len__() == 1) linked_list.insert_head("Riccardo") self.assertTrue(linked_list.__len__() == 2) self.assertTrue(linked_list.head.item == "Riccardo") self.assertFalse(linked_list.head.next.item == "Riccardo") self.assertTrue(linked_list.head.next.item == 25)
def test_len(): """Test that the len method works.""" l = LinkedList() l.insert(8) l.insert(9) l.insert(10) assert l.__len__() == 3
def test_len(): """.""" from linked_list import LinkedList l = LinkedList() l.push(8) l.push(9) l.push(10) assert l.__len__() == 3
def test_length_func(self): # Arrange my_list = LinkedList() my_list.insert_front("Test3") my_list.insert_front("Test3") my_list.insert_front("Test1") my_list.insert_front("Test2") my_list.insert_front("Test3") my_list.insert_front("Test3") # Act length1 = my_list.__len__() # Assert self.assertEqual(6, length1, "delete did not result in correct list length")
class Stack(object): """Ojbect inheretence from Linked list to create Stack Data structure.""" def __init__(self, data=[]): """Instantiate new Stack.""" self._new_linked_list = LinkedList(data) def pop(self): """Remove and returns node from top of the stack.""" return self._new_linked_list.pop() def push(self, val): """Add a new node to the top of stack.""" return self._new_linked_list.push(val) def __len__(self): """Return length of stack.""" return self._new_linked_list.__len__()
def test_linked_list_empty(self): linked_list = LinkedList() self.assertTrue(linked_list.__len__()==0) self.assertEqual(linked_list.head, None)
# llist.add_after('f', Node('g')) # exception print(llist) # inserting a node before a target node llist.add_before('c', Node('bb')) print(llist) llist.add_before('a', Node('zz')) print(llist) # removing a node llist.remove_node('zz') print(llist) llist.remove_node('cc') llist.remove_node('bb') print(llist) # get the node at position i print(llist.get(3)) # print(llist.get(7)) # exception # get the node at position i using subscript print(llist[3]) # print(llist[7]) # exception # get the reversed linked list print(llist.reverse()) # get the length of the linked list print(len(llist)) print(llist.__len__())
def test_len_method(): """Test __len__.""" test_linked_list = LinkedList() test_linked_list.push(5) assert test_linked_list.__len__() == 1
class TestLinkedList(unittest.TestCase): def setUp(self): self.list = LinkedList() def tearDown(self): self.list = None def test_append(self): self.list.append("Mr. Green") self.assertTrue(self.list.head.data == "Mr. Green") self.assertTrue(self.list.head.next_node is None) def test_append_two(self): self.list.append("Mr. Green") self.list.append("Miss Scarlet") self.assertTrue(self.list.head.data == "Miss Scarlet") new_head = self.list.head.next_node self.assertTrue(new_head.data == "Mr. Green") def test_next_node(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") self.assertTrue(self.list.head.data == "Mr. Boddy") new_head = self.list.head.next_node self.assertTrue(new_head.data == "Mrs. Peacock") last = new_head.next_node self.assertTrue(last.data == "Prof. Plum") def test_len(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") length = self.list.__len__() self.assertTrue(length == 3) def test_succeed_getitem(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") result = self.list.__getitem__(0) self.assertTrue(result.data == "Mr. Boddy") result = self.list.__getitem__(1) self.assertTrue(result.data == "Mrs. Peacock") result = self.list.__getitem__(2) self.assertTrue(result.data == "Prof. Plum") def test_fail_getitem(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") with self.assertRaises(IndexError): self.list.__getitem__(2) @unittest.skip('Extra Challenge: pop method.') def test_pop(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") old_head = self.list.pop() self.assertTrue(old_head.data == "Mr. Boddy") new_head = self.list.head self.assertTrue(new_head.data == "Mrs. Peacock") new_length = len(self.list) self.assertTrue(new_length == 2) @unittest.skip('Extra Challenge: pop method.') def test_pop_empty_list(self): with self.assertRaises(IndexError): self.list.pop() @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") # Delete the list head self.list.__delitem__(0) self.assertTrue(self.list.head.data == "Mrs. Peacock") # Delete the list tail self.list.__delitem__(1) self.assertTrue(self.list.head.next_node is None) new_length = len(self.list) self.assertTrue(new_length == 1) @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete_value_not_in_list(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") with self.assertRaises(IndexError): self.list.__delitem__(3) @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete_empty_list(self): with self.assertRaises(IndexError): self.list.__delitem__(1) @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete_next_reassignment(self): self.list.append("Prof. Plum") self.list.append("Mrs. White") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") self.list.__delitem__(1) self.list.__delitem__(1) self.assertTrue(self.list.head.next_node.data == "Prof. Plum")
class TestLinkedList(unittest.TestCase): def setUp(self): self.list = LinkedList() def tearDown(self): self.list = None def test_append(self): self.list.append("Mr. Green") self.assertTrue(self.list.head.data == "Mr. Green") self.assertTrue(self.list.head.next_node is None) def test_append_two(self): self.list.append("Mr. Green") self.list.append("Miss Scarlet") self.assertTrue(self.list.head.data == "Miss Scarlet") new_head = self.list.head.next_node self.assertTrue(new_head.data == "Mr. Green") def test_next_node(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") self.assertTrue(self.list.head.data == "Mr. Boddy") new_head = self.list.head.next_node self.assertTrue(new_head.data == "Mrs. Peacock") last = new_head.next_node self.assertTrue(last.data == "Prof. Plum") def test_len(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") length = self.list.__len__() self.assertTrue(length == 3) def test_len_zero(self): length = self.list.__len__() self.assertTrue(length == 0) def test_len_one(self): self.list.append("Prof. Plum") length = self.list.__len__() self.assertTrue(length == 1) def test_succeed_getitem(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") result = self.list.__getitem__(0) self.assertTrue(result == "Mr. Boddy") result = self.list.__getitem__(1) self.assertTrue(result == "Mrs. Peacock") result = self.list.__getitem__(2) self.assertTrue(result == "Prof. Plum") def test_fail_getitem(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") with self.assertRaises(IndexError): self.list.__getitem__(2) @unittest.skip('Extra Challenge: pop method.') def test_pop(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") old_head = self.list.pop() self.assertTrue(old_head.data == "Mr. Boddy") new_head = self.list.head self.assertTrue(new_head.data == "Mrs. Peacock") new_length = len(self.list) self.assertTrue(new_length == 2) @unittest.skip('Extra Challenge: pop method.') def test_pop_empty_list(self): with self.assertRaises(IndexError): self.list.pop() @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") # Delete the list head self.list.__delitem__(0) self.assertTrue(self.list.head.data == "Mrs. Peacock") # Delete the list tail self.list.__delitem__(1) self.assertTrue(self.list.head.next_node is None) new_length = len(self.list) self.assertTrue(new_length == 1) @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete_value_not_in_list(self): self.list.append("Prof. Plum") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") with self.assertRaises(IndexError): self.list.__delitem__(3) @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete_empty_list(self): with self.assertRaises(IndexError): self.list.__delitem__(1) @unittest.skip('Extra Challenge: __delitem__ method.') def test_delete_next_reassignment(self): self.list.append("Prof. Plum") self.list.append("Mrs. White") self.list.append("Mrs. Peacock") self.list.append("Mr. Boddy") self.list.__delitem__(1) self.list.__delitem__(1) self.assertTrue(self.list.head.next_node.data == "Prof. Plum")