diff options
| author | Chris McDonough <chrism@plope.com> | 2011-09-25 02:34:28 -0400 |
|---|---|---|
| committer | Chris McDonough <chrism@plope.com> | 2011-09-25 02:34:28 -0400 |
| commit | 884807ee7de11b1d72a17112519e2f1669cd9726 (patch) | |
| tree | fe0c7a3616893a0271b0b9048c5c1ed469244f50 | |
| parent | a7c67c168934b8fe23a817f2bdc8b3b298a384c8 (diff) | |
| download | pyramid-884807ee7de11b1d72a17112519e2f1669cd9726.tar.gz pyramid-884807ee7de11b1d72a17112519e2f1669cd9726.tar.bz2 pyramid-884807ee7de11b1d72a17112519e2f1669cd9726.zip | |
fix i18n poorly
| -rw-r--r-- | pyramid/i18n.py | 13 | ||||
| -rw-r--r-- | pyramid/tests/test_i18n.py | 18 | ||||
| -rw-r--r-- | pyramid/tests/test_integration.py | 1 |
3 files changed, 23 insertions, 9 deletions
diff --git a/pyramid/i18n.py b/pyramid/i18n.py index 082723cd3..889227130 100644 --- a/pyramid/i18n.py +++ b/pyramid/i18n.py @@ -9,6 +9,7 @@ from translationstring import TranslationStringFactory # API TranslationString = TranslationString # PyFlakes TranslationStringFactory = TranslationStringFactory # PyFlakes +from pyramid.compat import PY3 from pyramid.interfaces import ILocalizer from pyramid.interfaces import ITranslationDirectories from pyramid.interfaces import ILocaleNegotiator @@ -328,7 +329,10 @@ class Translations(gettext.GNUTranslations, object): """Like ``ugettext()``, but look the message up in the specified domain. """ - return self._domains.get(domain, self).ugettext(message) + if PY3: # pragma: no cover + return self._domains.get(domain, self).gettext(message) + else: # pragma: no cover + return self._domains.get(domain, self).ugettext(message) def dngettext(self, domain, singular, plural, num): """Like ``ngettext()``, but look the message up in the specified @@ -346,5 +350,10 @@ class Translations(gettext.GNUTranslations, object): """Like ``ungettext()`` but look the message up in the specified domain. """ - return self._domains.get(domain, self).ungettext(singular, plural, num) + if PY3: # pragma: no cover + return self._domains.get(domain, self).ngettext( + singular, plural, num) + else: # pragma: no cover + return self._domains.get(domain, self).ungettext( + singular, plural, num) diff --git a/pyramid/tests/test_i18n.py b/pyramid/tests/test_i18n.py index 008cf525a..bd4998b10 100644 --- a/pyramid/tests/test_i18n.py +++ b/pyramid/tests/test_i18n.py @@ -50,9 +50,9 @@ class TestLocalizer(unittest.TestCase): def test_pluralize(self): translations = DummyTranslations() localizer = self._makeOne(None, translations) - self.assertEqual(localizer.pluralize('singular', 'plural', 1, - domain='1', mapping={}), - 'singular') + result = localizer.pluralize('singular', 'plural', 1, + domain='1', mapping={}) + self.assertEqual(result, 'singular') self.assertTrue(localizer.pluralizer) def test_pluralize_pluralizer_already_added(self): @@ -434,8 +434,8 @@ class TestTranslations(unittest.TestCase): def test_ldgettext(self): t = self._makeOne() - self.assertEqual(t.ldgettext('messages', 'foo'), 'Voh') - self.assertEqual(t.ldgettext('messages1', 'foo'), 'VohD') + self.assertEqual(t.ldgettext('messages', 'foo'), b'Voh') + self.assertEqual(t.ldgettext('messages1', 'foo'), b'VohD') def test_dugettext(self): t = self._makeOne() @@ -449,8 +449,8 @@ class TestTranslations(unittest.TestCase): def test_ldngettext(self): t = self._makeOne() - self.assertEqual(t.ldngettext('messages', 'foo1', 'foos1', 1), 'Voh1') - self.assertEqual(t.ldngettext('messages1', 'foo1', 'foos1', 1), 'VohD1') + self.assertEqual(t.ldngettext('messages', 'foo1', 'foos1', 1), b'Voh1') + self.assertEqual(t.ldngettext('messages1', 'foo1', 'foos1', 1),b'VohD1') def test_dungettext(self): t = self._makeOne() @@ -476,5 +476,9 @@ class DummyTranslations(object): def ugettext(self, text): return text + gettext = ugettext + def ungettext(self, singular, plural, n): return singular + + ngettext = ungettext diff --git a/pyramid/tests/test_integration.py b/pyramid/tests/test_integration.py index 286e1146b..1a723c0d7 100644 --- a/pyramid/tests/test_integration.py +++ b/pyramid/tests/test_integration.py @@ -7,6 +7,7 @@ from pyramid.wsgi import wsgiapp from pyramid.view import view_config from pyramid.static import static_view from pyramid.compat import text_ +from pyramid.compat import native_ from zope.interface import Interface |
