def test_get_at(self):
     n = Node(1)
     ll = Linkedlist()
     ll.insert_at(0, n)
     self.assertEqual(ll.get_at(0), n)
     n = Node(2)
     ll.insert_at(10, n)
     self.assertEqual(ll.get_at(1), n)
 def test_iter(self):
     ll = Linkedlist()
     n1 = Node(1)
     ll.insert_at(0, n1)
     n2 = Node(2)
     ll.insert_at(10, n2)
     n3 = Node(3)
     ll.insert_at(1, n3)
     for node in ll:
         print node.data
 def test_remove_at(self):
     n1 = Node(1)
     ll = Linkedlist()
     self.assertEqual(ll.remove_at(0), None)
     ll.insert_at(0, n1)
     n2 = Node(2)
     ll.insert_at(10, n2)
     n3 = Node(3)
     ll.insert_at(1, n3)
     self.assertEqual(ll.remove_at(2), n3)
     self.assertEqual(ll.remove_at(0), n1)