def test_next_node(self): value = "next-node" next_node = Node(value) node = Node("data", next_node) self.assertEqual(node.get_next(), next_node) node.set_next(None) self.assertEqual(node.get_next(), None)
def test_node_data(self): value = "node-value" changed_value = "changed" node = Node(value) self.assertEqual(node.get_data(), value) node.set_data(changed_value) self.assertEqual(node.get_data(), changed_value)
def add(self, value, pos=0): current = self.head if pos == 0: self.head = Node(value, current) else: i = 1 is_added = False while current is not None and not is_added: if i == pos: new_node = Node(value) new_node.set_next(current.get_next()) current.set_next(new_node) is_added = True i += 1 current = current.get_next()