예제 #1
0
 def test_search(self):
     dll = DLL()
     # Test an empty Linked List
     assert dll.search(5) == 'Linked List is empty.'
     # Test Linked List with some nodes
     dll.addNode(1)
     dll.addNode(2)
     dll.addNode(3)
     assert dll.search('python') == False
     assert dll.search(3) == True
예제 #2
0
 def test_size(self):
     dll = DLL()
     size = dll.size()
     # Test an empty Linked List
     assert size == 0
     # Test Linked List with some nodes
     dll.addNode(1)
     dll.addNode(2)
     dll.addNode(3)
     size = dll.size()
     assert size == 3
예제 #3
0
 def test_addNode(self):
     dll = DLL()
     dll.head
     dll.addNode(1)
     assert str(dll.head) == 'DLLNode object: data=1'
     assert dll.head.previous == None
     assert dll.head.next == None
     dll.addNode(2)
     assert str(dll.head) == 'DLLNode object: data=2'
     assert dll.head.previous == None
     assert str(dll.head.next) == 'DLLNode object: data=1'
     assert dll.size() == 2
     assert dll.head.next.next == None
예제 #4
0
 def test_remove(self):
     dll = DLL()
     # Test an empty Linked List
     assert str(
         dll.remove(5)) == 'Linked List is empty. No Nodes to remove.'
     # Test Linked List with some nodes
     dll.addNode(1)
     dll.addNode(2)
     assert str(dll.remove(24)) == 'A Node with given data is not present.'
     assert dll.search(2) == True
     dll.remove(2)
     assert dll.search(2) == False
     dll.addNode(3)
     assert dll.size() == 2
     assert str(dll.head) == 'DLLNode object: data=3'
     dll.remove(3)
     assert str(dll.head) == 'DLLNode object: data=1'