Exemplo n.º 1
0
 def test_double_slicing(self):
     node1, node2, node3 = Node(1), Node(2), Node(3)
     node1.next, node2.next, node3.next = node2, node3, None
     node1.prev, node2.prev, node3.prev = None, node1, node2
     self.double.head = node1
     self.double.tail = node3
     self.assertEqual(self.double[0].value, 1)
     self.assertEqual(self.double[1].value, 2)
     self.assertEqual(self.double[2].value, 3)
     self.assertRaises(IndexError, lambda val: self.double[val], 3)
Exemplo n.º 2
0
 def test_iteration_double(self):
     node1, node2, node3 = Node(1), Node(2), Node(3)
     node1.next, node2.next, node3.next = node2, node3, None
     node1.prev, node2.prev, node3.prev = None, node1, node2
     self.double.head = node1
     self.double.tail = node3
     # test __iter__
     self.assertEqual([str(i) for i in self.double], [str(i) for i in range(1, 4)])
     # test iterating over reversed
     self.assertEqual([str(i) for i in reversed(self.double)], [str(i) for i in range(3, 0, -1)])