diff options
| author | Thomas Chaumeny <t.chaumeny@gmail.com> | 2014-08-30 20:06:38 +0200 |
|---|---|---|
| committer | Aymeric Augustin <aymeric.augustin@m4x.org> | 2014-08-31 09:03:53 +0200 |
| commit | 032c091659666ea63f80f4c2d7f9b8bc72214f18 (patch) | |
| tree | f946d5627fbc8ca7450edabd238c57f2048bd7e9 /tests/utils_tests | |
| parent | 8b6cb9d0ddc21e68a1c63b25ceb685151ef21e6f (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.py | 30 |
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) |
