Account for the cadence in all the messages
This commit is contained in:
parent
2ad7ed2ff2
commit
7491a4d2f8
5 changed files with 109 additions and 40 deletions
|
@ -1,4 +1,6 @@
|
|||
import matchy.util as util
|
||||
from datetime import datetime, timedelta
|
||||
import pytest
|
||||
|
||||
|
||||
def test_iterate_all_shifts():
|
||||
|
@ -50,3 +52,51 @@ def test_randomized():
|
|||
|
||||
assert util.randomised(string)() == "foo"
|
||||
assert util.randomised(list)() in list()
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"weekday, hour, start, expected",
|
||||
[
|
||||
pytest.param(
|
||||
0, 0, datetime(2024, 9, 22),
|
||||
datetime(2024, 9, 23), id="tomorrow"
|
||||
),
|
||||
pytest.param(
|
||||
4, 16, datetime(2024, 9, 22),
|
||||
datetime(2024, 9, 27, 16), id="complicated"
|
||||
),
|
||||
],
|
||||
)
|
||||
def test_get_next_datetime(weekday, hour, start, expected):
|
||||
value = util.get_next_datetime(weekday, hour, start)
|
||||
assert value == expected
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"weekday, hour, start, cadence, cadence_start, expected",
|
||||
[
|
||||
pytest.param(
|
||||
0, 0, datetime(2024, 9, 22),
|
||||
1, datetime(2024, 9, 22),
|
||||
datetime(2024, 9, 23), id="tomorrow"
|
||||
),
|
||||
pytest.param(
|
||||
0, 0, datetime(2024, 9, 22),
|
||||
2, datetime(2024, 9, 22),
|
||||
datetime(2024, 9, 23), id="every-other"
|
||||
),
|
||||
pytest.param(
|
||||
0, 0, datetime(2024, 9, 22),
|
||||
2, datetime(2024, 9, 14),
|
||||
datetime(2024, 9, 30), id="every-other-before"
|
||||
),
|
||||
pytest.param(
|
||||
0, 0, datetime(2024, 9, 22),
|
||||
3, datetime(2024, 9, 14),
|
||||
datetime(2024, 10, 7), id="every-third"
|
||||
),
|
||||
],
|
||||
)
|
||||
def test_get_next_datetime_with_cadence(weekday, hour, start, expected, cadence, cadence_start):
|
||||
value = util.get_next_datetime_with_cadence(weekday, hour, start, cadence, cadence_start)
|
||||
assert value == expected
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue