python: Switch mocking of timezone_now to time_machine.

This commit is contained in:
Alex Vandiver
2023-11-28 18:16:58 +00:00
committed by Tim Abbott
parent 82c08dd153
commit 61fc838179
16 changed files with 189 additions and 185 deletions

View File

@@ -1,7 +1,7 @@
from datetime import timedelta
from typing import Any, Callable
from unittest import mock
import time_machine
from django.utils.timezone import now as timezone_now
from typing_extensions import override
@@ -134,15 +134,13 @@ class TestExpirableSessionVars(ZulipTestCase):
def test_set_and_get_basic(self) -> None:
start_time = timezone_now()
with mock.patch("zerver.lib.sessions.timezone_now", return_value=start_time):
with time_machine.travel(start_time, tick=False):
set_expirable_session_var(
self.session, "test_set_and_get_basic", "some_value", expiry_seconds=10
)
value = get_expirable_session_var(self.session, "test_set_and_get_basic")
self.assertEqual(value, "some_value")
with mock.patch(
"zerver.lib.sessions.timezone_now", return_value=start_time + timedelta(seconds=11)
):
with time_machine.travel((start_time + timedelta(seconds=11)), tick=False):
value = get_expirable_session_var(self.session, "test_set_and_get_basic")
self.assertEqual(value, None)