Mercurial > genshi > mirror
comparison markup/tests/eval.py @ 227:96a7e5011c69 trunk
Use list comprehension instead of `map()` in the AST transformer.
author | cmlenz |
---|---|
date | Fri, 08 Sep 2006 09:17:42 +0000 |
parents | 16d7b5db7ef4 |
children |
comparison
equal
deleted
inserted
replaced
226:4d8a9e03b23d | 227:96a7e5011c69 |
---|---|
248 def test_list_comprehension_with_getitem(self): | 248 def test_list_comprehension_with_getitem(self): |
249 items = [{'name': 'a', 'value': 1}, {'name': 'b', 'value': 2}] | 249 items = [{'name': 'a', 'value': 1}, {'name': 'b', 'value': 2}] |
250 expr = Expression("[i['name'] for i in items if i['value'] > 1]") | 250 expr = Expression("[i['name'] for i in items if i['value'] > 1]") |
251 self.assertEqual(['b'], expr.evaluate({'items': items})) | 251 self.assertEqual(['b'], expr.evaluate({'items': items})) |
252 | 252 |
253 # generator expressions only supported in Python 2.4 and up | |
254 if sys.version_info >= (2, 4): | 253 if sys.version_info >= (2, 4): |
254 # Generator expressions only supported in Python 2.4 and up | |
255 | |
255 def test_generator_expression(self): | 256 def test_generator_expression(self): |
256 expr = Expression("list(n for n in numbers if n < 2)") | 257 expr = Expression("list(n for n in numbers if n < 2)") |
257 self.assertEqual([0, 1], expr.evaluate({'numbers': range(5)})) | 258 self.assertEqual([0, 1], expr.evaluate({'numbers': range(5)})) |
258 | 259 |
259 expr = Expression("list((i, n + 1) for i, n in enumerate(numbers))") | 260 expr = Expression("list((i, n + 1) for i, n in enumerate(numbers))") |