summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2011-09-25 02:34:28 -0400
committerChris McDonough <chrism@plope.com>2011-09-25 02:34:28 -0400
commit884807ee7de11b1d72a17112519e2f1669cd9726 (patch)
treefe0c7a3616893a0271b0b9048c5c1ed469244f50
parenta7c67c168934b8fe23a817f2bdc8b3b298a384c8 (diff)
downloadpyramid-884807ee7de11b1d72a17112519e2f1669cd9726.tar.gz
pyramid-884807ee7de11b1d72a17112519e2f1669cd9726.tar.bz2
pyramid-884807ee7de11b1d72a17112519e2f1669cd9726.zip
fix i18n poorly
-rw-r--r--pyramid/i18n.py13
-rw-r--r--pyramid/tests/test_i18n.py18
-rw-r--r--pyramid/tests/test_integration.py1
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