summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/modeltests/timezones/tests.py59
1 files changed, 17 insertions, 42 deletions
diff --git a/tests/modeltests/timezones/tests.py b/tests/modeltests/timezones/tests.py
index 7505503d1f..90bc1f3a18 100644
--- a/tests/modeltests/timezones/tests.py
+++ b/tests/modeltests/timezones/tests.py
@@ -50,32 +50,8 @@ requires_tz_support = skipUnless(TZ_SUPPORT,
"time zone, but your operating system isn't able to do that.")
-class BaseDateTimeTests(TestCase):
-
- @classmethod
- def setUpClass(self):
- self._old_time_zone = settings.TIME_ZONE
- settings.TIME_ZONE = connection.settings_dict['TIME_ZONE'] = 'Africa/Nairobi'
- timezone._localtime = None
- if TZ_SUPPORT:
- self._old_tz = os.environ.get('TZ')
- os.environ['TZ'] = 'Africa/Nairobi'
- time.tzset()
-
- @classmethod
- def tearDownClass(self):
- settings.TIME_ZONE = connection.settings_dict['TIME_ZONE'] = self._old_time_zone
- timezone._localtime = None
- if TZ_SUPPORT:
- if self._old_tz is None:
- del os.environ['TZ']
- else:
- os.environ['TZ'] = self._old_tz
- time.tzset()
-
-
-@override_settings(USE_TZ=False)
-class LegacyDatabaseTests(BaseDateTimeTests):
+@override_settings(TIME_ZONE='Africa/Nairobi', USE_TZ=False)
+class LegacyDatabaseTests(TestCase):
def test_naive_datetime(self):
dt = datetime.datetime(2011, 9, 1, 13, 20, 30)
@@ -269,8 +245,8 @@ class LegacyDatabaseTests(BaseDateTimeTests):
transform=lambda d: d)
-@override_settings(USE_TZ=True)
-class NewDatabaseTests(BaseDateTimeTests):
+@override_settings(TIME_ZONE='Africa/Nairobi', USE_TZ=True)
+class NewDatabaseTests(TestCase):
@requires_tz_support
def test_naive_datetime(self):
@@ -486,7 +462,8 @@ class NewDatabaseTests(BaseDateTimeTests):
self.assertEqual(e.dt, None)
-class SerializationTests(BaseDateTimeTests):
+@override_settings(TIME_ZONE='Africa/Nairobi')
+class SerializationTests(TestCase):
# Backend-specific notes:
# - JSON supports only milliseconds, microseconds will be truncated.
@@ -639,8 +616,9 @@ class SerializationTests(BaseDateTimeTests):
obj = serializers.deserialize('yaml', data).next().object
self.assertEqual(obj.dt.replace(tzinfo=UTC), dt)
-@override_settings(DATETIME_FORMAT='c', USE_L10N=False, USE_TZ=True)
-class TemplateTests(BaseDateTimeTests):
+
+@override_settings(DATETIME_FORMAT='c', TIME_ZONE='Africa/Nairobi', USE_L10N=False, USE_TZ=True)
+class TemplateTests(TestCase):
@requires_tz_support
def test_localtime_templatetag_and_filters(self):
@@ -723,10 +701,8 @@ class TemplateTests(BaseDateTimeTests):
tpl = Template("{% load tz %}{{ dt|localtime }}|{{ dt|utc }}")
ctx = Context({'dt': datetime.datetime(2011, 9, 1, 12, 20, 30)})
- timezone._localtime = None
with self.settings(TIME_ZONE='Europe/Paris'):
self.assertEqual(tpl.render(ctx), "2011-09-01T12:20:30+02:00|2011-09-01T10:20:30+00:00")
- timezone._localtime = None
# Use a pytz timezone as argument
tpl = Template("{% load tz %}{{ dt|timezone:tz }}")
@@ -864,11 +840,9 @@ class TemplateTests(BaseDateTimeTests):
tpl = Template("{% load tz %}{{ dt }}")
ctx = Context({'dt': datetime.datetime(2011, 9, 1, 12, 20, 30, tzinfo=EAT)})
- timezone._localtime = None
with self.settings(TIME_ZONE=None):
# the actual value depends on the system time zone of the host
self.assertTrue(tpl.render(ctx).startswith("2011"))
- timezone._localtime = None
@requires_tz_support
def test_now_template_tag_uses_current_time_zone(self):
@@ -879,8 +853,8 @@ class TemplateTests(BaseDateTimeTests):
self.assertEqual(tpl.render(Context({})), "+0700")
-@override_settings(DATETIME_FORMAT='c', USE_L10N=False, USE_TZ=False)
-class LegacyFormsTests(BaseDateTimeTests):
+@override_settings(DATETIME_FORMAT='c', TIME_ZONE='Africa/Nairobi', USE_L10N=False, USE_TZ=False)
+class LegacyFormsTests(TestCase):
def test_form(self):
form = EventForm({'dt': u'2011-09-01 13:20:30'})
@@ -914,8 +888,8 @@ class LegacyFormsTests(BaseDateTimeTests):
self.assertEqual(e.dt, datetime.datetime(2011, 9, 1, 13, 20, 30))
-@override_settings(DATETIME_FORMAT='c', USE_L10N=False, USE_TZ=True)
-class NewFormsTests(BaseDateTimeTests):
+@override_settings(DATETIME_FORMAT='c', TIME_ZONE='Africa/Nairobi', USE_L10N=False, USE_TZ=True)
+class NewFormsTests(TestCase):
@requires_tz_support
def test_form(self):
@@ -960,8 +934,8 @@ class NewFormsTests(BaseDateTimeTests):
self.assertEqual(e.dt, datetime.datetime(2011, 9, 1, 10, 20, 30, tzinfo=UTC))
-@override_settings(DATETIME_FORMAT='c', USE_L10N=False, USE_TZ=True)
-class AdminTests(BaseDateTimeTests):
+@override_settings(DATETIME_FORMAT='c', TIME_ZONE='Africa/Nairobi', USE_L10N=False, USE_TZ=True)
+class AdminTests(TestCase):
urls = 'modeltests.timezones.urls'
fixtures = ['tz_users.xml']
@@ -1012,7 +986,8 @@ class AdminTests(BaseDateTimeTests):
self.assertContains(response, t.created.astimezone(ICT).isoformat())
-class UtilitiesTests(BaseDateTimeTests):
+@override_settings(TIME_ZONE='Africa/Nairobi')
+class UtilitiesTests(TestCase):
def test_make_aware(self):
self.assertEqual(