Mercurial > genshi > genshi-test
changeset 785:64bf70856f02
Fix for #250: ignore expressions in attribute values when inside `i18n:msg` elements.
author | cmlenz |
---|---|
date | Thu, 31 Jul 2008 14:18:25 +0000 |
parents | 6dc1a751804d |
children | d30a27266b45 |
files | ChangeLog genshi/filters/i18n.py genshi/filters/tests/i18n.py |
diffstat | 3 files changed, 22 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,14 @@ * Support for Python 2.3 has been dropped. +Version 0.5.2 +http://svn.edgewall.org/repos/genshi/tags/0.5.2/ +(???, from branches/stable/0.5.x) + + * Fix problem with I18n filter that would get confused by expressions in + attribute values when inside an `i18n:msg` block (ticket #250). + + Version 0.5.1 http://svn.edgewall.org/repos/genshi/tags/0.5.1/ (Jul 9 2008, from branches/stable/0.5.x)
--- a/genshi/filters/i18n.py +++ b/genshi/filters/i18n.py @@ -163,7 +163,7 @@ newval = self.translate(value) else: newval = list(self(_ensure(value), ctxt, - search_text=False, msgbuf=msgbuf) + search_text=False) ) if newval != value: value = newval
--- a/genshi/filters/tests/i18n.py +++ b/genshi/filters/tests/i18n.py @@ -301,6 +301,19 @@ <p>Jim, sei gegrüßt!</p> </html>""", tmpl.generate(user=dict(name='Jim')).render()) + def test_translate_i18n_msg_with_attribute_param(self): + tmpl = MarkupTemplate("""<html xmlns:py="http://genshi.edgewall.org/" + xmlns:i18n="http://genshi.edgewall.org/i18n"> + <p i18n:msg=""> + Hello, <a href="#${anchor}">dude</a>! + </p> + </html>""") + gettext = lambda s: u"Sei gegrüßt, [1:Alter]!" + tmpl.filters.insert(0, Translator(gettext)) + self.assertEqual("""<html> + <p>Sei gegrüßt, <a href="#42">Alter</a>!</p> + </html>""", tmpl.generate(anchor='42').render()) + def test_extract_i18n_msg_with_two_params(self): tmpl = MarkupTemplate("""<html xmlns:py="http://genshi.edgewall.org/" xmlns:i18n="http://genshi.edgewall.org/i18n">