Bump Django to 4.1.* (#2989)

This commit is contained in:
Raphael Michel
2023-06-05 09:56:31 +02:00
committed by GitHub
parent 3a8556bb78
commit bd32b33ba9
119 changed files with 742 additions and 613 deletions

View File

@@ -21,11 +21,11 @@
#
import datetime
from zoneinfo import ZoneInfo
import pytest
import pytz
from django.core import mail as djmail
from django.utils.timezone import now, utc
from django.utils.timezone import now
from django_scopes import scopes_disabled
from pretix.base.models import InvoiceAddress, Order
@@ -46,8 +46,8 @@ def test_sendmail_rule_create_single(event):
dt_now = now()
NZ = pytz.timezone('NZ')
Berlin = pytz.timezone('Europe/Berlin')
NZ = ZoneInfo('NZ')
Berlin = ZoneInfo('Europe/Berlin')
@pytest.mark.django_db
@@ -71,62 +71,62 @@ Berlin = pytz.timezone('Europe/Berlin')
(dt_now + datetime.timedelta(days=1)).replace(hour=9, minute=0, second=0, microsecond=0)
),
( # "Relative, before event start"
datetime.datetime(2021, 5, 17, 12, 14, 0, tzinfo=utc),
datetime.datetime(2021, 5, 17, 12, 14, 0, tzinfo=datetime.timezone.utc),
None,
'UTC',
Rule(date_is_absolute=False, send_offset_days=2, send_offset_time=datetime.time(hour=0)),
datetime.datetime(2021, 5, 15, 0, tzinfo=utc)
datetime.datetime(2021, 5, 15, 0, tzinfo=datetime.timezone.utc)
),
( # "Relative, after event end"
datetime.datetime(2021, 5, 17, 18, tzinfo=utc),
datetime.datetime(2021, 5, 18, 5, tzinfo=utc),
datetime.datetime(2021, 5, 17, 18, tzinfo=datetime.timezone.utc),
datetime.datetime(2021, 5, 18, 5, tzinfo=datetime.timezone.utc),
'UTC',
Rule(date_is_absolute=False, offset_to_event_end=True, offset_is_after=True, send_offset_days=1, send_offset_time=datetime.time(hour=10)),
datetime.datetime(2021, 5, 19, 10, tzinfo=utc)
datetime.datetime(2021, 5, 19, 10, tzinfo=datetime.timezone.utc)
),
( # "Relative, before event end"
datetime.datetime(2021, 5, 17, 18, tzinfo=utc),
datetime.datetime(2021, 5, 22, 5, tzinfo=utc),
datetime.datetime(2021, 5, 17, 18, tzinfo=datetime.timezone.utc),
datetime.datetime(2021, 5, 22, 5, tzinfo=datetime.timezone.utc),
'UTC',
Rule(date_is_absolute=False, offset_to_event_end=True, offset_is_after=False, send_offset_days=1, send_offset_time=datetime.time(hour=10)),
datetime.datetime(2021, 5, 21, 10, tzinfo=utc)
datetime.datetime(2021, 5, 21, 10, tzinfo=datetime.timezone.utc)
),
# Tests for timezone quirks
( # Test sending on leap day
datetime.datetime(2020, 2, 27, 9, tzinfo=utc),
datetime.datetime(2020, 2, 27, 9, tzinfo=datetime.timezone.utc),
None,
'UTC',
Rule(date_is_absolute=False, offset_is_after=True, send_offset_days=2, send_offset_time=datetime.time(hour=9)),
datetime.datetime(2020, 2, 29, 9, tzinfo=utc)
datetime.datetime(2020, 2, 29, 9, tzinfo=datetime.timezone.utc)
),
( # Test timezone far off from UTC
NZ.localize(datetime.datetime(2021, 5, 17, 22)),
datetime.datetime(2021, 5, 17, 22, tzinfo=NZ),
None,
'NZ',
Rule(date_is_absolute=False, offset_is_after=True, send_offset_days=1, send_offset_time=datetime.time(hour=9)),
NZ.localize(datetime.datetime(2021, 5, 18, 9))
datetime.datetime(2021, 5, 18, 9, tzinfo=NZ)
),
( # Test across DST change
Berlin.localize(datetime.datetime(2021, 10, 29, 16, 30)),
datetime.datetime(2021, 10, 29, 16, 30, tzinfo=Berlin),
None,
'Europe/Berlin',
Rule(date_is_absolute=False, offset_is_after=True, send_offset_days=4, send_offset_time=datetime.time(hour=2, minute=30)),
Berlin.localize(datetime.datetime(2021, 11, 2, 2, 30))
datetime.datetime(2021, 11, 2, 2, 30, tzinfo=Berlin)
),
( # Test ambiguous time at DST change
Berlin.localize(datetime.datetime(2021, 10, 29, 18, 30)),
datetime.datetime(2021, 10, 29, 18, 30, tzinfo=Berlin),
None,
'Europe/Berlin',
Rule(date_is_absolute=False, offset_is_after=True, send_offset_days=2, send_offset_time=datetime.time(hour=2, minute=30)),
datetime.datetime(2021, 10, 31, 1, 30, tzinfo=utc)
datetime.datetime(2021, 10, 31, 1, 30, tzinfo=datetime.timezone.utc)
),
( # Test non-existing time at DST change
Berlin.localize(datetime.datetime(2021, 3, 29, 14, 30)),
datetime.datetime(2021, 3, 29, 14, 30, tzinfo=Berlin),
None,
'Europe/Berlin',
Rule(date_is_absolute=False, offset_is_after=False, send_offset_days=1, send_offset_time=datetime.time(hour=2, minute=30)),
datetime.datetime(2021, 3, 28, 1, 30, tzinfo=utc)
datetime.datetime(2021, 3, 28, 1, 30, tzinfo=datetime.timezone.utc)
),
])
@@ -145,7 +145,7 @@ def test_sendmail_rule_send_time(event_from, event_to, event_tz, rule, expected,
rule.save()
m = ScheduledMail.objects.filter(rule=rule).get()
assert m.computed_datetime.astimezone(event.timezone) == expected
assert m.computed_datetime.astimezone(event.timezone) == expected.astimezone(event.timezone)
@pytest.mark.django_db
@@ -166,7 +166,7 @@ def test_sendmail_rule_recompute(event):
sendmail_run_rules(None)
m = ScheduledMail.objects.filter(rule=rule).first()
assert m.computed_datetime.astimezone(utc) == expected
assert m.computed_datetime.astimezone(datetime.timezone.utc) == expected
@pytest.mark.django_db