Polish delete mid node challenge and solution

Update edge cases and tests.
This commit is contained in:
Donne Martin
2016-06-18 11:46:00 -04:00
parent 99239dda62
commit 37cf2028e6
3 changed files with 36 additions and 16 deletions

View File

@@ -13,16 +13,25 @@ class TestDeleteNode(object):
head = Node(2)
linked_list = MyLinkedList(head)
linked_list.delete_node(head)
assert_equal(linked_list.get_all_data(), [None])
assert_equal(linked_list.get_all_data(), [])
print('Test: Multiple nodes')
linked_list = MyLinkedList(None)
node0 = linked_list.insert_to_front(1)
node0 = linked_list.insert_to_front(2)
node1 = linked_list.insert_to_front(3)
node2 = linked_list.insert_to_front(4)
node3 = linked_list.insert_to_front(1)
linked_list.delete_node(node2)
assert_equal(linked_list.get_all_data(), [1, 3, 1])
linked_list.delete_node(node1)
assert_equal(linked_list.get_all_data(), [1, 4, 2])
print('Test: Multiple nodes, delete last element')
linked_list = MyLinkedList(None)
node0 = linked_list.insert_to_front(2)
node1 = linked_list.insert_to_front(3)
node2 = linked_list.insert_to_front(4)
node3 = linked_list.insert_to_front(1)
linked_list.delete_node(node0)
assert_equal(linked_list.get_all_data(), [1, 4, 3, None])
print('Success: test_delete_node')