Issue #28563: Make plural form selection more lenient and accepting
non-integer numbers. Django tests depend on this.
diff --git a/Lib/test/test_gettext.py b/Lib/test/test_gettext.py
index 9a8e2ac..4d1e0a3 100644
--- a/Lib/test/test_gettext.py
+++ b/Lib/test/test_gettext.py
@@ -372,12 +372,16 @@
self.assertRaises(ZeroDivisionError, f, 0)
def test_plural_number(self):
- f = gettext.c2py('1')
- self.assertEqual(f(1), 1)
- self.assertRaises(ValueError, f, 1.0)
- self.assertRaises(ValueError, f, '1')
- self.assertRaises(ValueError, f, [])
- self.assertRaises(ValueError, f, object())
+ f = gettext.c2py('n != 1')
+ self.assertEqual(f(1), 0)
+ self.assertEqual(f(2), 1)
+ self.assertEqual(f(1.0), 0)
+ self.assertEqual(f(2.0), 1)
+ self.assertEqual(f(1.1), 1)
+ self.assertRaises(TypeError, f, '2')
+ self.assertRaises(TypeError, f, b'2')
+ self.assertRaises(TypeError, f, [])
+ self.assertRaises(TypeError, f, object())
class GNUTranslationParsingTest(GettextBaseTest):