summaryrefslogtreecommitdiff
path: root/tests/utils_tests
diff options
context:
space:
mode:
authorThomas Chaumeny <t.chaumeny@gmail.com>2014-08-30 20:06:38 +0200
committerAymeric Augustin <aymeric.augustin@m4x.org>2014-08-31 09:03:53 +0200
commit032c091659666ea63f80f4c2d7f9b8bc72214f18 (patch)
treef946d5627fbc8ca7450edabd238c57f2048bd7e9 /tests/utils_tests
parent8b6cb9d0ddc21e68a1c63b25ceb685151ef21e6f (diff)
Fixed #23388 -- Made django.utils.timezone.override usable as a decorator
Diffstat (limited to 'tests/utils_tests')
-rw-r--r--tests/utils_tests/test_timezone.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/utils_tests/test_timezone.py b/tests/utils_tests/test_timezone.py
index ae78d68103..9414a6097e 100644
--- a/tests/utils_tests/test_timezone.py
+++ b/tests/utils_tests/test_timezone.py
@@ -71,6 +71,36 @@ class TimezoneTests(unittest.TestCase):
finally:
timezone.deactivate()
+ def test_override_decorator(self):
+ default = timezone.get_default_timezone()
+
+ @timezone.override(EAT)
+ def func_tz_eat():
+ self.assertIs(EAT, timezone.get_current_timezone())
+
+ @timezone.override(None)
+ def func_tz_none():
+ self.assertIs(default, timezone.get_current_timezone())
+
+ try:
+ timezone.activate(ICT)
+
+ func_tz_eat()
+ self.assertIs(ICT, timezone.get_current_timezone())
+
+ func_tz_none()
+ self.assertIs(ICT, timezone.get_current_timezone())
+
+ timezone.deactivate()
+
+ func_tz_eat()
+ self.assertIs(default, timezone.get_current_timezone())
+
+ func_tz_none()
+ self.assertIs(default, timezone.get_current_timezone())
+ finally:
+ timezone.deactivate()
+
def test_copy(self):
self.assertIsInstance(copy.copy(timezone.UTC()), timezone.UTC)
self.assertIsInstance(copy.copy(timezone.LocalTimezone()), timezone.LocalTimezone)