|
@@ -1,14 +1,15 @@
|
|
|
+import unittest
|
|
|
from datetime import datetime, timedelta, timezone as datetime_timezone
|
|
|
|
|
|
-import pytz
|
|
|
-
|
|
|
try:
|
|
|
import zoneinfo
|
|
|
except ImportError:
|
|
|
- try:
|
|
|
- from backports import zoneinfo
|
|
|
- except ImportError:
|
|
|
- zoneinfo = None
|
|
|
+ from backports import zoneinfo
|
|
|
+
|
|
|
+try:
|
|
|
+ import pytz
|
|
|
+except ImportError:
|
|
|
+ pytz = None
|
|
|
|
|
|
from django.conf import settings
|
|
|
from django.db.models import (
|
|
@@ -23,15 +24,24 @@ from django.db.models.functions import (
|
|
|
TruncYear,
|
|
|
)
|
|
|
from django.test import (
|
|
|
- TestCase, override_settings, skipIfDBFeature, skipUnlessDBFeature,
|
|
|
+ TestCase, ignore_warnings, override_settings, skipIfDBFeature,
|
|
|
+ skipUnlessDBFeature,
|
|
|
)
|
|
|
from django.utils import timezone
|
|
|
+from django.utils.deprecation import RemovedInDjango50Warning
|
|
|
|
|
|
from ..models import Author, DTModel, Fan
|
|
|
|
|
|
-ZONE_CONSTRUCTORS = (pytz.timezone,)
|
|
|
-if zoneinfo is not None:
|
|
|
- ZONE_CONSTRUCTORS += (zoneinfo.ZoneInfo,)
|
|
|
+HAS_PYTZ = pytz is not None
|
|
|
+if not HAS_PYTZ:
|
|
|
+ needs_pytz = unittest.skip('Test requires pytz')
|
|
|
+else:
|
|
|
+ def needs_pytz(f):
|
|
|
+ return f
|
|
|
+
|
|
|
+ZONE_CONSTRUCTORS = (zoneinfo.ZoneInfo,)
|
|
|
+if HAS_PYTZ:
|
|
|
+ ZONE_CONSTRUCTORS += (pytz.timezone,)
|
|
|
|
|
|
|
|
|
def truncate_to(value, kind, tzinfo=None):
|
|
@@ -98,8 +108,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 10)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
|
|
@@ -135,8 +145,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 10)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
|
|
@@ -158,8 +168,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 10)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
|
|
@@ -181,8 +191,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
|
|
@@ -280,8 +290,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -319,8 +329,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -339,8 +349,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -359,14 +369,14 @@ class DateFunctionTests(TestCase):
|
|
|
def test_extract_iso_year_func_boundaries(self):
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
week_52_day_2014 = datetime(2014, 12, 27, 13, 0) # Sunday
|
|
|
week_1_day_2014_2015 = datetime(2014, 12, 31, 13, 0) # Wednesday
|
|
|
week_53_day_2015 = datetime(2015, 12, 31, 13, 0) # Thursday
|
|
|
if settings.USE_TZ:
|
|
|
- week_1_day_2014_2015 = timezone.make_aware(week_1_day_2014_2015, is_dst=False)
|
|
|
- week_52_day_2014 = timezone.make_aware(week_52_day_2014, is_dst=False)
|
|
|
- week_53_day_2015 = timezone.make_aware(week_53_day_2015, is_dst=False)
|
|
|
+ week_1_day_2014_2015 = timezone.make_aware(week_1_day_2014_2015)
|
|
|
+ week_52_day_2014 = timezone.make_aware(week_52_day_2014)
|
|
|
+ week_53_day_2015 = timezone.make_aware(week_53_day_2015)
|
|
|
days = [week_52_day_2014, week_1_day_2014_2015, week_53_day_2015]
|
|
|
obj_1_iso_2014 = self.create_model(week_52_day_2014, end_datetime)
|
|
|
obj_1_iso_2015 = self.create_model(week_1_day_2014_2015, end_datetime)
|
|
@@ -397,8 +407,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -417,8 +427,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -437,8 +447,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -458,8 +468,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 8, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -477,13 +487,13 @@ class DateFunctionTests(TestCase):
|
|
|
def test_extract_quarter_func_boundaries(self):
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
|
|
|
last_quarter_2014 = datetime(2014, 12, 31, 13, 0)
|
|
|
first_quarter_2015 = datetime(2015, 1, 1, 13, 0)
|
|
|
if settings.USE_TZ:
|
|
|
- last_quarter_2014 = timezone.make_aware(last_quarter_2014, is_dst=False)
|
|
|
- first_quarter_2015 = timezone.make_aware(first_quarter_2015, is_dst=False)
|
|
|
+ last_quarter_2014 = timezone.make_aware(last_quarter_2014)
|
|
|
+ first_quarter_2015 = timezone.make_aware(first_quarter_2015)
|
|
|
dates = [last_quarter_2014, first_quarter_2015]
|
|
|
self.create_model(last_quarter_2014, end_datetime)
|
|
|
self.create_model(first_quarter_2015, end_datetime)
|
|
@@ -498,15 +508,15 @@ class DateFunctionTests(TestCase):
|
|
|
def test_extract_week_func_boundaries(self):
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
|
|
|
week_52_day_2014 = datetime(2014, 12, 27, 13, 0) # Sunday
|
|
|
week_1_day_2014_2015 = datetime(2014, 12, 31, 13, 0) # Wednesday
|
|
|
week_53_day_2015 = datetime(2015, 12, 31, 13, 0) # Thursday
|
|
|
if settings.USE_TZ:
|
|
|
- week_1_day_2014_2015 = timezone.make_aware(week_1_day_2014_2015, is_dst=False)
|
|
|
- week_52_day_2014 = timezone.make_aware(week_52_day_2014, is_dst=False)
|
|
|
- week_53_day_2015 = timezone.make_aware(week_53_day_2015, is_dst=False)
|
|
|
+ week_1_day_2014_2015 = timezone.make_aware(week_1_day_2014_2015)
|
|
|
+ week_52_day_2014 = timezone.make_aware(week_52_day_2014)
|
|
|
+ week_53_day_2015 = timezone.make_aware(week_53_day_2015)
|
|
|
|
|
|
days = [week_52_day_2014, week_1_day_2014_2015, week_53_day_2015]
|
|
|
self.create_model(week_53_day_2015, end_datetime)
|
|
@@ -525,8 +535,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -551,8 +561,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -586,8 +596,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -606,8 +616,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -626,8 +636,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -646,8 +656,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
|
|
@@ -752,8 +762,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'year')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -786,10 +796,10 @@ class DateFunctionTests(TestCase):
|
|
|
last_quarter_2015 = truncate_to(datetime(2015, 12, 31, 14, 10, 50, 123), 'quarter')
|
|
|
first_quarter_2016 = truncate_to(datetime(2016, 1, 1, 14, 10, 50, 123), 'quarter')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
- last_quarter_2015 = timezone.make_aware(last_quarter_2015, is_dst=False)
|
|
|
- first_quarter_2016 = timezone.make_aware(first_quarter_2016, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
+ last_quarter_2015 = timezone.make_aware(last_quarter_2015)
|
|
|
+ first_quarter_2016 = timezone.make_aware(first_quarter_2016)
|
|
|
self.create_model(start_datetime=start_datetime, end_datetime=end_datetime)
|
|
|
self.create_model(start_datetime=end_datetime, end_datetime=start_datetime)
|
|
|
self.create_model(start_datetime=last_quarter_2015, end_datetime=end_datetime)
|
|
@@ -825,8 +835,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'month')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -857,8 +867,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'week')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -881,8 +891,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -909,8 +919,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -937,8 +947,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 26) # 0 microseconds.
|
|
|
end_datetime = datetime(2015, 6, 15, 14, 30, 26, 321)
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.assertIs(
|
|
|
DTModel.objects.filter(
|
|
@@ -962,8 +972,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'day')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -986,8 +996,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'hour')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -1018,8 +1028,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'minute')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -1050,8 +1060,8 @@ class DateFunctionTests(TestCase):
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = truncate_to(datetime(2016, 6, 15, 14, 10, 50, 123), 'second')
|
|
|
if settings.USE_TZ:
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
self.assertQuerysetEqual(
|
|
@@ -1085,9 +1095,9 @@ class DateFunctionTests(TestCase):
|
|
|
fan_since_2 = datetime(2015, 2, 3, 15, 0, 0)
|
|
|
fan_since_3 = datetime(2017, 2, 3, 15, 0, 0)
|
|
|
if settings.USE_TZ:
|
|
|
- fan_since_1 = timezone.make_aware(fan_since_1, is_dst=False)
|
|
|
- fan_since_2 = timezone.make_aware(fan_since_2, is_dst=False)
|
|
|
- fan_since_3 = timezone.make_aware(fan_since_3, is_dst=False)
|
|
|
+ fan_since_1 = timezone.make_aware(fan_since_1)
|
|
|
+ fan_since_2 = timezone.make_aware(fan_since_2)
|
|
|
+ fan_since_3 = timezone.make_aware(fan_since_3)
|
|
|
Fan.objects.create(author=author_1, name='Tom', fan_since=fan_since_1)
|
|
|
Fan.objects.create(author=author_1, name='Emma', fan_since=fan_since_2)
|
|
|
Fan.objects.create(author=author_2, name='Isabella', fan_since=fan_since_3)
|
|
@@ -1113,9 +1123,9 @@ class DateFunctionTests(TestCase):
|
|
|
datetime_2 = datetime(2001, 3, 5)
|
|
|
datetime_3 = datetime(2002, 1, 3)
|
|
|
if settings.USE_TZ:
|
|
|
- datetime_1 = timezone.make_aware(datetime_1, is_dst=False)
|
|
|
- datetime_2 = timezone.make_aware(datetime_2, is_dst=False)
|
|
|
- datetime_3 = timezone.make_aware(datetime_3, is_dst=False)
|
|
|
+ datetime_1 = timezone.make_aware(datetime_1)
|
|
|
+ datetime_2 = timezone.make_aware(datetime_2)
|
|
|
+ datetime_3 = timezone.make_aware(datetime_3)
|
|
|
obj_1 = self.create_model(datetime_1, datetime_3)
|
|
|
obj_2 = self.create_model(datetime_2, datetime_1)
|
|
|
obj_3 = self.create_model(datetime_3, datetime_2)
|
|
@@ -1144,8 +1154,8 @@ class DateFunctionWithTimeZoneTests(DateFunctionTests):
|
|
|
def test_extract_func_with_timezone(self):
|
|
|
start_datetime = datetime(2015, 6, 15, 23, 30, 1, 321)
|
|
|
end_datetime = datetime(2015, 6, 16, 13, 11, 27, 123)
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
delta_tzinfo_pos = datetime_timezone(timedelta(hours=5))
|
|
|
delta_tzinfo_neg = datetime_timezone(timedelta(hours=-5, minutes=17))
|
|
@@ -1203,8 +1213,8 @@ class DateFunctionWithTimeZoneTests(DateFunctionTests):
|
|
|
def test_extract_func_explicit_timezone_priority(self):
|
|
|
start_datetime = datetime(2015, 6, 15, 23, 30, 1, 321)
|
|
|
end_datetime = datetime(2015, 6, 16, 13, 11, 27, 123)
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
|
|
|
for melb in self.get_timezones('Australia/Melbourne'):
|
|
@@ -1233,8 +1243,8 @@ class DateFunctionWithTimeZoneTests(DateFunctionTests):
|
|
|
def test_trunc_timezone_applied_before_truncation(self):
|
|
|
start_datetime = datetime(2016, 1, 1, 1, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
|
|
|
for melb, pacific in zip(
|
|
@@ -1263,6 +1273,8 @@ class DateFunctionWithTimeZoneTests(DateFunctionTests):
|
|
|
self.assertEqual(model.melb_time, melb_start_datetime.time())
|
|
|
self.assertEqual(model.pacific_time, pacific_start_datetime.time())
|
|
|
|
|
|
+ @needs_pytz
|
|
|
+ @ignore_warnings(category=RemovedInDjango50Warning)
|
|
|
def test_trunc_ambiguous_and_invalid_times(self):
|
|
|
sao = pytz.timezone('America/Sao_Paulo')
|
|
|
utc = timezone.utc
|
|
@@ -1294,8 +1306,8 @@ class DateFunctionWithTimeZoneTests(DateFunctionTests):
|
|
|
"""
|
|
|
start_datetime = datetime(2015, 6, 15, 14, 30, 50, 321)
|
|
|
end_datetime = datetime(2016, 6, 15, 14, 10, 50, 123)
|
|
|
- start_datetime = timezone.make_aware(start_datetime, is_dst=False)
|
|
|
- end_datetime = timezone.make_aware(end_datetime, is_dst=False)
|
|
|
+ start_datetime = timezone.make_aware(start_datetime)
|
|
|
+ end_datetime = timezone.make_aware(end_datetime)
|
|
|
self.create_model(start_datetime, end_datetime)
|
|
|
self.create_model(end_datetime, start_datetime)
|
|
|
|