This commit is contained in:
@@ -24,6 +24,10 @@ class FakeDatetime:
|
||||
def now(cls):
|
||||
return cls._now
|
||||
|
||||
def __new__(cls, *args, **kwargs):
|
||||
# Handle constructor calls like datetime(2025, 1, 1)
|
||||
return datetime.__new__(datetime, *args, **kwargs)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def patch_time(monkeypatch):
|
||||
@@ -34,12 +38,12 @@ def patch_time(monkeypatch):
|
||||
# Mock datetime.now to use our fake time
|
||||
monkeypatch.setattr("slic.utils.run_later.datetime", FakeDatetime)
|
||||
# Mock helper functions to use fake time
|
||||
monkeypatch.setattr("slic.utils.run_later.today", lambda *args, **kwargs: datetime(
|
||||
FakeDatetime.now().year, FakeDatetime.now().month, FakeDatetime.now().day, *args, **kwargs))
|
||||
monkeypatch.setattr("slic.utils.run_later.tomorrow", lambda *args, **kwargs: datetime(
|
||||
FakeDatetime.now().year, FakeDatetime.now().month, FakeDatetime.now().day, *args, **kwargs) + timedelta(days=1))
|
||||
monkeypatch.setattr("slic.utils.run_later.yesterday", lambda *args, **kwargs: datetime(
|
||||
FakeDatetime.now().year, FakeDatetime.now().month, FakeDatetime.now().day, *args, **kwargs) - timedelta(days=1))
|
||||
monkeypatch.setattr("slic.utils.run_later.today", lambda *args, **kwargs:
|
||||
datetime(FakeDatetime.now().year, FakeDatetime.now().month, FakeDatetime.now().day, *args, **kwargs))
|
||||
monkeypatch.setattr("slic.utils.run_later.tomorrow", lambda *args, **kwargs:
|
||||
datetime(FakeDatetime.now().year, FakeDatetime.now().month, FakeDatetime.now().day, *args, **kwargs) + timedelta(days=1))
|
||||
monkeypatch.setattr("slic.utils.run_later.yesterday", lambda *args, **kwargs:
|
||||
datetime(FakeDatetime.now().year, FakeDatetime.now().month, FakeDatetime.now().day, *args, **kwargs) - timedelta(days=1))
|
||||
|
||||
|
||||
def test_run_at(patch_time):
|
||||
|
||||
Reference in New Issue
Block a user