diff --git a/zerver/migrations/0262_mutedtopic_date_muted.py b/zerver/migrations/0262_mutedtopic_date_muted.py index b3014ddcc7..22ee32a792 100644 --- a/zerver/migrations/0262_mutedtopic_date_muted.py +++ b/zerver/migrations/0262_mutedtopic_date_muted.py @@ -14,6 +14,6 @@ class Migration(migrations.Migration): migrations.AddField( model_name='mutedtopic', name='date_muted', - field=models.DateTimeField(default=datetime.datetime(2020, 1, 1, 0, 0)), + field=models.DateTimeField(default=datetime.datetime(2020, 1, 1, 0, 0, tzinfo=datetime.timezone.utc)), ), ] diff --git a/zerver/models.py b/zerver/models.py index 9a308c90fb..468f143c20 100644 --- a/zerver/models.py +++ b/zerver/models.py @@ -1491,7 +1491,7 @@ class MutedTopic(models.Model): # The default value for date_muted is a few weeks before tracking # of when topics were muted was first introduced. It's designed # to be obviously incorrect so that users can tell it's backfilled data. - date_muted = models.DateTimeField(default=datetime.datetime(2020, 1, 1, 0, 0, 0, 0)) + date_muted = models.DateTimeField(default=datetime.datetime(2020, 1, 1, 0, 0, tzinfo=datetime.timezone.utc)) class Meta: unique_together = ('user_profile', 'stream', 'topic_name') diff --git a/zerver/tests/test_digest.py b/zerver/tests/test_digest.py index 5690853239..716201d047 100644 --- a/zerver/tests/test_digest.py +++ b/zerver/tests/test_digest.py @@ -257,8 +257,8 @@ class TestDigestEmailMessages(ZulipTestCase): @mock.patch('zerver.lib.digest.timezone_now') @override_settings(SEND_DIGEST_EMAILS=True) def test_new_stream_link(self, mock_django_timezone: mock.MagicMock) -> None: - cutoff = datetime.datetime(year=2017, month=11, day=1) - mock_django_timezone.return_value = datetime.datetime(year=2017, month=11, day=5) + cutoff = datetime.datetime(year=2017, month=11, day=1, tzinfo=datetime.timezone.utc) + mock_django_timezone.return_value = datetime.datetime(year=2017, month=11, day=5, tzinfo=datetime.timezone.utc) cordelia = self.example_user('cordelia') stream_id = create_stream_if_needed(cordelia.realm, 'New stream')[0].id new_stream = gather_new_streams(cordelia, cutoff)[1] diff --git a/zerver/tests/test_muting.py b/zerver/tests/test_muting.py index f26c0b9ad0..946df021b2 100644 --- a/zerver/tests/test_muting.py +++ b/zerver/tests/test_muting.py @@ -1,5 +1,5 @@ from django.utils.timezone import now as timezone_now -from datetime import timedelta, datetime +from datetime import timedelta, datetime, timezone from typing import Any, Dict from unittest import mock @@ -70,10 +70,10 @@ class MutedTopicsTests(ZulipTestCase): {'stream_id': stream.id, 'topic': 'Verona3', 'op': 'add'}, ] - mock_date_muted = datetime.timestamp(datetime(2020, 1, 1)) + mock_date_muted = datetime(2020, 1, 1, tzinfo=timezone.utc).timestamp() for data in payloads: with mock.patch('zerver.views.muting.timezone_now', - return_value=datetime(2020, 1, 1)): + return_value=datetime(2020, 1, 1, tzinfo=timezone.utc)): result = self.api_patch(user, url, data) self.assert_json_success(result) @@ -100,7 +100,7 @@ class MutedTopicsTests(ZulipTestCase): {'stream': stream.name, 'topic': 'vERONA3', 'op': 'remove'}, {'stream_id': stream.id, 'topic': 'vEroNA3', 'op': 'remove'}, ] - mock_date_muted = datetime.timestamp(datetime(2020, 1, 1)) + mock_date_muted = datetime(2020, 1, 1, tzinfo=timezone.utc).timestamp() for data in payloads: add_topic_mute( @@ -108,7 +108,7 @@ class MutedTopicsTests(ZulipTestCase): stream_id=stream.id, recipient_id=recipient.id, topic_name='Verona3', - date_muted=datetime(2020, 1, 1), + date_muted=datetime(2020, 1, 1, tzinfo=timezone.utc), ) self.assertIn([stream.name, 'Verona3', mock_date_muted], get_topic_mutes(user))