def test_daterange_invalid_step(): with pytest.raises(ValueError): daterange(None, date(1978, 10, 21), 0)
def test_daterange_empty(): assert [] == list(daterange(date(1978, 10, 21), -2)) assert [] == list(daterange(date(1978, 10, 21), date(1978, 10, 10))) assert [] == list(daterange(date(1978, 10, 10), date(1978, 10, 20), -1))
def test_daterange_going_back_in_time(): result = list(daterange(date(1978, 10, 21), -2, -1)) assert result[0] == date(1978, 10, 21) assert result[-1] == date(1978, 10, 20)
def test_daterange_stop_only(): result = list(daterange(date(1978, 10, 21))) assert result[0] == date(1978, 10, 1) assert result[-1] == date(1978, 10, 20)