comparison markup/tests/eval.py @ 194:eb5c8200f49b

Fix regression introduced in [242]: any reference to an undefined name would result in a `NameError`.
author cmlenz
date Thu, 24 Aug 2006 19:05:22 +0000
parents cda3bdfc19ed
children a180441acbff
comparison
equal deleted inserted replaced
193:76129a79458d 194:eb5c8200f49b
237 237
238 def test_list_comprehension_with_getitem(self): 238 def test_list_comprehension_with_getitem(self):
239 items = [{'name': 'a', 'value': 1}, {'name': 'b', 'value': 2}] 239 items = [{'name': 'a', 'value': 1}, {'name': 'b', 'value': 2}]
240 expr = Expression("[i['name'] for i in items if i['value'] > 1]") 240 expr = Expression("[i['name'] for i in items if i['value'] > 1]")
241 self.assertEqual(['b'], expr.evaluate({'items': items})) 241 self.assertEqual(['b'], expr.evaluate({'items': items}))
242
243 def test_error_access_undefined(self):
244 expr = Expression("nothing", filename='index.html', lineno=50)
245 self.assertEqual(Undefined, type(expr.evaluate({})))
242 246
243 def test_error_call_undefined(self): 247 def test_error_call_undefined(self):
244 expr = Expression("nothing()", filename='index.html', lineno=50) 248 expr = Expression("nothing()", filename='index.html', lineno=50)
245 try: 249 try:
246 expr.evaluate({}) 250 expr.evaluate({})
Copyright (C) 2012-2017 Edgewall Software