(self, ngettext, gettext,
singular, plural, tsingular, tplural,
numbers_only=True)
| 356 | class PluralFormsTests: |
| 357 | |
| 358 | def _test_plural_forms(self, ngettext, gettext, |
| 359 | singular, plural, tsingular, tplural, |
| 360 | numbers_only=True): |
| 361 | x = ngettext(singular, plural, 1) |
| 362 | self.assertEqual(x, tsingular) |
| 363 | x = ngettext(singular, plural, 2) |
| 364 | self.assertEqual(x, tplural) |
| 365 | x = gettext(singular) |
| 366 | self.assertEqual(x, tsingular) |
| 367 | |
| 368 | lineno = self._test_plural_forms.__code__.co_firstlineno + 12 |
| 369 | with self.assertWarns(DeprecationWarning) as cm: |
| 370 | x = ngettext(singular, plural, 1.0) |
| 371 | self.assertEqual(cm.filename, __file__) |
| 372 | self.assertEqual(cm.lineno, lineno) |
| 373 | self.assertEqual(x, tsingular) |
| 374 | with self.assertWarns(DeprecationWarning) as cm: |
| 375 | x = ngettext(singular, plural, 1.1) |
| 376 | self.assertEqual(cm.filename, __file__) |
| 377 | self.assertEqual(cm.lineno, lineno + 5) |
| 378 | self.assertEqual(x, tplural) |
| 379 | |
| 380 | if numbers_only: |
| 381 | with self.assertRaises(TypeError): |
| 382 | ngettext(singular, plural, None) |
| 383 | else: |
| 384 | with self.assertWarns(DeprecationWarning) as cm: |
| 385 | x = ngettext(singular, plural, None) |
| 386 | self.assertEqual(x, tplural) |
| 387 | |
| 388 | def test_plural_forms(self): |
| 389 | self._test_plural_forms( |
no test coverage detected