summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoayad Mardini <moayad.m@gmail.com>2014-06-10 21:28:32 +0300
committerTim Graham <timograham@gmail.com>2014-06-10 16:04:43 -0400
commit868ff4e37c1e4cfaf7283496c24f6e711ad66005 (patch)
tree12313f4aad04c89f16fc5e53bf154d4b0f146a54
parentf97c53c0989336563c535c9737dff197b403054d (diff)
Fixed #22798 -- `pluralize()` now adds plural_suffix for any `1 < d < 2`
Thanks Odd_Bloke for the report.
-rw-r--r--django/template/defaultfilters.py2
-rw-r--r--tests/defaultfilters/tests.py5
2 files changed, 6 insertions, 1 deletions
diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py
index e6a0c619dc..c5839197df 100644
--- a/django/template/defaultfilters.py
+++ b/django/template/defaultfilters.py
@@ -934,7 +934,7 @@ def pluralize(value, arg='s'):
singular_suffix, plural_suffix = bits[:2]
try:
- if int(value) != 1:
+ if float(value) != 1:
return plural_suffix
except ValueError: # Invalid string that's not a number.
pass
diff --git a/tests/defaultfilters/tests.py b/tests/defaultfilters/tests.py
index ab6ff80961..7ebef193fa 100644
--- a/tests/defaultfilters/tests.py
+++ b/tests/defaultfilters/tests.py
@@ -654,6 +654,11 @@ class DefaultFiltersTests(TestCase):
self.assertEqual(pluralize(1), '')
self.assertEqual(pluralize(0), 's')
self.assertEqual(pluralize(2), 's')
+
+ # Ticket #22798
+ self.assertEqual(pluralize(0.5), 's')
+ self.assertEqual(pluralize(1.5), 's')
+
self.assertEqual(pluralize(decimal.Decimal(1)), '')
self.assertEqual(pluralize(decimal.Decimal(0)), 's')
self.assertEqual(pluralize(decimal.Decimal(2)), 's')