summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2021-09-08 08:37:27 +0200
committerGitHub <noreply@github.com>2021-09-08 08:37:27 +0200
commit4a43335d300da942602fbf216cd0a53b60827ab4 (patch)
tree0fa559e6c92066934e0c79cada2293b986e56e29 /tests
parent301a85a12f3c2c9427c7ff581fd4683bab1f29f6 (diff)
Fixed #30086, Refs #32873 -- Made floatformat template filter independent of USE_L10N.
Diffstat (limited to 'tests')
-rw-r--r--tests/i18n/tests.py18
-rw-r--r--tests/template_tests/filter_tests/test_floatformat.py16
2 files changed, 23 insertions, 11 deletions
diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py
index eba4a8595c..104d986a2c 100644
--- a/tests/i18n/tests.py
+++ b/tests/i18n/tests.py
@@ -523,15 +523,15 @@ class FormattingTests(SimpleTestCase):
self.assertEqual('99999.999', Template('{{ f }}').render(self.ctxt))
self.assertEqual('Des. 31, 2009', Template('{{ d }}').render(self.ctxt))
self.assertEqual('Des. 31, 2009, 8:50 p.m.', Template('{{ dt }}').render(self.ctxt))
- self.assertEqual('66666.67', Template('{{ n|floatformat:2 }}').render(self.ctxt))
- self.assertEqual('100000.0', Template('{{ f|floatformat }}').render(self.ctxt))
+ self.assertEqual('66666.67', Template('{{ n|floatformat:"2u" }}').render(self.ctxt))
+ self.assertEqual('100000.0', Template('{{ f|floatformat:"u" }}').render(self.ctxt))
self.assertEqual(
'66666.67',
- Template('{{ n|floatformat:"2g" }}').render(self.ctxt),
+ Template('{{ n|floatformat:"2gu" }}').render(self.ctxt),
)
self.assertEqual(
'100000.0',
- Template('{{ f|floatformat:"g" }}').render(self.ctxt),
+ Template('{{ f|floatformat:"ug" }}').render(self.ctxt),
)
self.assertEqual('10:15 a.m.', Template('{{ t|time:"TIME_FORMAT" }}').render(self.ctxt))
self.assertEqual('12/31/2009', Template('{{ d|date:"SHORT_DATE_FORMAT" }}').render(self.ctxt))
@@ -628,12 +628,12 @@ class FormattingTests(SimpleTestCase):
)
# We shouldn't change the behavior of the floatformat filter re:
- # thousand separator and grouping when USE_L10N is False even
- # if the USE_THOUSAND_SEPARATOR, NUMBER_GROUPING and
- # THOUSAND_SEPARATOR settings are specified
+ # thousand separator and grouping when localization is disabled
+ # even if the USE_THOUSAND_SEPARATOR, NUMBER_GROUPING and
+ # THOUSAND_SEPARATOR settings are specified.
with self.settings(USE_THOUSAND_SEPARATOR=True, NUMBER_GROUPING=1, THOUSAND_SEPARATOR='!'):
- self.assertEqual('66666.67', Template('{{ n|floatformat:2 }}').render(self.ctxt))
- self.assertEqual('100000.0', Template('{{ f|floatformat }}').render(self.ctxt))
+ self.assertEqual('66666.67', Template('{{ n|floatformat:"2u" }}').render(self.ctxt))
+ self.assertEqual('100000.0', Template('{{ f|floatformat:"u" }}').render(self.ctxt))
def test_false_like_locale_formats(self):
"""
diff --git a/tests/template_tests/filter_tests/test_floatformat.py b/tests/template_tests/filter_tests/test_floatformat.py
index 64d65f7dc4..1035fb96da 100644
--- a/tests/template_tests/filter_tests/test_floatformat.py
+++ b/tests/template_tests/filter_tests/test_floatformat.py
@@ -2,7 +2,6 @@ from decimal import Decimal, localcontext
from django.template.defaultfilters import floatformat
from django.test import SimpleTestCase
-from django.test.utils import override_settings
from django.utils import translation
from django.utils.safestring import mark_safe
@@ -60,7 +59,6 @@ class FunctionTests(SimpleTestCase):
self.assertEqual(floatformat(1.5e-15, -20), '0.00000000000000150000')
self.assertEqual(floatformat(1.00000000000000015, 16), '1.0000000000000002')
- @override_settings(USE_L10N=True)
def test_force_grouping(self):
with translation.override('en'):
self.assertEqual(floatformat(10000, 'g'), '10,000')
@@ -73,6 +71,20 @@ class FunctionTests(SimpleTestCase):
# Invalid suffix.
self.assertEqual(floatformat(10000, 'g2'), '10000')
+ def test_unlocalize(self):
+ with translation.override('de', deactivate=True):
+ self.assertEqual(floatformat(66666.666, '2'), '66666,67')
+ self.assertEqual(floatformat(66666.666, '2u'), '66666.67')
+ with self.settings(
+ USE_THOUSAND_SEPARATOR=True,
+ NUMBER_GROUPING=3,
+ THOUSAND_SEPARATOR='!',
+ ):
+ self.assertEqual(floatformat(66666.666, '2gu'), '66!666.67')
+ self.assertEqual(floatformat(66666.666, '2ug'), '66!666.67')
+ # Invalid suffix.
+ self.assertEqual(floatformat(66666.666, 'u2'), '66666.666')
+
def test_zero_values(self):
self.assertEqual(floatformat(0, 6), '0.000000')
self.assertEqual(floatformat(0, 7), '0.0000000')