missing = object()
tmsg = self._catalog.get(message, missing)
if tmsg is missing:
- if self._fallback:
- return self._fallback.gettext(message)
- return message
- return tmsg
+ tmsg = self._catalog.get((message, self.plural(1)), missing)
+ if tmsg is not missing:
+ return tmsg
+ if self._fallback:
+ return self._fallback.gettext(message)
+ return message
def ngettext(self, msgid1, msgid2, n):
try:
eq(x, 'Hay %s fichero')
x = gettext.ngettext('There is %s file', 'There are %s files', 2)
eq(x, 'Hay %s ficheros')
+ x = gettext.gettext('There is %s file')
+ eq(x, 'Hay %s fichero')
def test_plural_context_forms1(self):
eq = self.assertEqual
eq(x, 'Hay %s fichero')
x = t.ngettext('There is %s file', 'There are %s files', 2)
eq(x, 'Hay %s ficheros')
+ x = t.gettext('There is %s file')
+ eq(x, 'Hay %s fichero')
def test_plural_context_forms2(self):
eq = self.assertEqual
--- /dev/null
+Ensure `gettext(msg)` retrieve translations even if a plural form exists. In
+other words: `gettext(msg) == ngettext(msg, '', 1)`.