@pytest.mark.parametrize('now, sample, expected_is_today', (('2021-01-01T00:00:00Z', '2021-12-31T23:59:59Z', False), ('2021-01-01T00:00:00Z', '2021-01-01T00:00:00Z', True), ('2021-01-01T23:59:59Z', '2021-01-01T00:00:00Z', True), ('2021-01-01T00:00:00Z', '2021-01-01T23:59:59Z', True), ('2021-01-01T23:59:59Z', '2021-01-01T23:59:59Z', True), ('2021-01-01T23:59:59Z', '2021-01-02T00:00:00Z', False), ('2021-05-31T23:00:00Z', '2021-05-31T22:59:59Z', False), ('2021-05-31T23:00:00Z', '2021-05-31T23:00:00Z', True), ('2021-06-01T22:59:59Z', '2021-05-31T23:00:00Z', True), ('2021-05-31T23:00:00Z', '2021-06-01T22:59:59Z', True), ('2021-06-01T22:59:59Z', '2021-06-01T22:59:59Z', True), ('2021-06-01T22:59:59Z', '2021-06-01T23:00:00Z', False)))
def test_AlertDate_is_today(now, sample, expected_is_today):
    with freeze_time(now):
        assert (AlertDate(dt_parse(sample)).is_today == expected_is_today)
@pytest.mark.parametrize('now, sample, expected_is_today', (('2021-01-01T00:00:00Z', '2021-12-31T23:59:59Z', False), ('2021-01-01T00:00:00Z', '2021-01-01T00:00:00Z', True), ('2021-01-01T23:59:59Z', '2021-01-01T00:00:00Z', True), ('2021-01-01T00:00:00Z', '2021-01-01T23:59:59Z', True), ('2021-01-01T23:59:59Z', '2021-01-01T23:59:59Z', True), ('2021-01-01T23:59:59Z', '2021-01-02T00:00:00Z', False), ('2021-05-31T23:00:00Z', '2021-05-31T22:59:59Z', False), ('2021-05-31T23:00:00Z', '2021-05-31T23:00:00Z', True), ('2021-06-01T22:59:59Z', '2021-05-31T23:00:00Z', True), ('2021-05-31T23:00:00Z', '2021-06-01T22:59:59Z', True), ('2021-06-01T22:59:59Z', '2021-06-01T22:59:59Z', True), ('2021-06-01T22:59:59Z', '2021-06-01T23:00:00Z', False)))
def test_AlertDate_is_today(now, sample, expected_is_today):
    with freeze_time(now):
        assert (AlertDate(dt_parse(sample)).is_today == expected_is_today)