summaryrefslogtreecommitdiff
path: root/tests/utils_tests/test_dateformat.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/utils_tests/test_dateformat.py')
-rw-r--r--tests/utils_tests/test_dateformat.py40
1 files changed, 13 insertions, 27 deletions
diff --git a/tests/utils_tests/test_dateformat.py b/tests/utils_tests/test_dateformat.py
index 2f682b6ce0..a1980b7930 100644
--- a/tests/utils_tests/test_dateformat.py
+++ b/tests/utils_tests/test_dateformat.py
@@ -1,42 +1,28 @@
from __future__ import unicode_literals
from datetime import datetime, date
-import os
import time
-import unittest
+from django.test import TestCase
+from django.test.utils import override_settings
from django.utils.dateformat import format
from django.utils import dateformat
+from django.utils.timezone import utc, get_fixed_timezone, get_default_timezone
from django.utils import translation
-from django.utils.timezone import utc
-from django.utils.tzinfo import FixedOffset, LocalTimezone
-class DateFormatTests(unittest.TestCase):
+@override_settings(TIME_ZONE='Europe/Copenhagen')
+class DateFormatTests(TestCase):
+
+ # Run tests that require a time zone only when the OS supports it.
+ tz_tests = hasattr(time, 'tzset')
+
def setUp(self):
- self.old_TZ = os.environ.get('TZ')
- os.environ['TZ'] = 'Europe/Copenhagen'
self._orig_lang = translation.get_language()
translation.activate('en-us')
- try:
- # Check if a timezone has been set
- time.tzset()
- self.tz_tests = True
- except AttributeError:
- # No timezone available. Don't run the tests that require a TZ
- self.tz_tests = False
-
def tearDown(self):
translation.activate(self._orig_lang)
- if self.old_TZ is None:
- del os.environ['TZ']
- else:
- os.environ['TZ'] = self.old_TZ
-
- # Cleanup - force re-evaluation of TZ environment variable.
- if self.tz_tests:
- time.tzset()
def test_date(self):
d = date(2009, 5, 16)
@@ -47,14 +33,14 @@ class DateFormatTests(unittest.TestCase):
self.assertEqual(datetime.fromtimestamp(int(format(dt, 'U'))), dt)
def test_datetime_with_local_tzinfo(self):
- ltz = LocalTimezone(datetime.now())
+ ltz = get_default_timezone()
dt = datetime(2009, 5, 16, 5, 30, 30, tzinfo=ltz)
self.assertEqual(datetime.fromtimestamp(int(format(dt, 'U')), ltz), dt)
self.assertEqual(datetime.fromtimestamp(int(format(dt, 'U'))), dt.replace(tzinfo=None))
def test_datetime_with_tzinfo(self):
- tz = FixedOffset(-510)
- ltz = LocalTimezone(datetime.now())
+ tz = get_fixed_timezone(-510)
+ ltz = get_default_timezone()
dt = datetime(2009, 5, 16, 5, 30, 30, tzinfo=tz)
self.assertEqual(datetime.fromtimestamp(int(format(dt, 'U')), tz), dt)
self.assertEqual(datetime.fromtimestamp(int(format(dt, 'U')), ltz), dt)
@@ -128,7 +114,7 @@ class DateFormatTests(unittest.TestCase):
timestamp = datetime(2008, 5, 19, 11, 45, 23, 123456)
# 3h30m to the west of UTC
- tz = FixedOffset(-3*60 - 30)
+ tz = get_fixed_timezone(-210)
aware_dt = datetime(2009, 5, 16, 5, 30, 30, tzinfo=tz)
if self.tz_tests: