comparison markup/tests/eval.py @ 167:7888f4104cc0

Handle non-ASCII characters in expressions. Closes #29. Thanks to Arnar Birgisson for reporting the problem and comping up with a patch!
author cmlenz
date Thu, 17 Aug 2006 15:22:12 +0000
parents df44110ca91d
children 194025141c89
comparison
equal deleted inserted replaced
166:718cba809cea 167:7888f4104cc0
25 self.assertEqual('foo', Expression('"""foo"""').evaluate({})) 25 self.assertEqual('foo', Expression('"""foo"""').evaluate({}))
26 self.assertEqual('foo', Expression("'foo'").evaluate({})) 26 self.assertEqual('foo', Expression("'foo'").evaluate({}))
27 self.assertEqual('foo', Expression("'''foo'''").evaluate({})) 27 self.assertEqual('foo', Expression("'''foo'''").evaluate({}))
28 self.assertEqual('foo', Expression("u'foo'").evaluate({})) 28 self.assertEqual('foo', Expression("u'foo'").evaluate({}))
29 self.assertEqual('foo', Expression("r'foo'").evaluate({})) 29 self.assertEqual('foo', Expression("r'foo'").evaluate({}))
30
31 def test_str_literal_non_ascii(self):
32 expr = Expression(u"u'\xfe'")
33 self.assertEqual(u'þ', expr.evaluate({}))
34 expr = Expression("u'\xfe'")
35 self.assertEqual(u'þ', expr.evaluate({}))
30 36
31 def test_num_literal(self): 37 def test_num_literal(self):
32 self.assertEqual(42, Expression("42").evaluate({})) 38 self.assertEqual(42, Expression("42").evaluate({}))
33 self.assertEqual(42L, Expression("42L").evaluate({})) 39 self.assertEqual(42L, Expression("42L").evaluate({}))
34 self.assertEqual(.42, Expression(".42").evaluate({})) 40 self.assertEqual(.42, Expression(".42").evaluate({}))
Copyright (C) 2012-2017 Edgewall Software