def test_maps_all(self): start = Cursor([1, 2, 3]) (mappings, end) = start.map_while(lambda n: n < 4 and (n * -1)) self.assertEqual(mappings, [-1, -2, -3]) self.assertTrue(end.empty())
def test_first_false(self): start = Cursor([1, 2, 3]) (mappings, end) = start.map_while(lambda n: n < 1 and (n * -1)) self.assertEqual(mappings, []) self.assertEqual(end, start)
def test_false_midway(self): start = Cursor([1, 2, 3]) (mappings, end) = start.map_while(lambda n: n < 3 and (n * -1)) self.assertEqual(mappings, [-1, -2]) self.assertEqual(end, start.at(2))
def test_empty_returns_empty(self): start = Cursor([]) (mappings, end) = start.map_while(lambda n: n == 1 and (n * -1)) self.assertEqual(mappings, []) self.assertTrue(end.empty())