diff --git a/pandas-stubs/core/indexes/datetimes.pyi b/pandas-stubs/core/indexes/datetimes.pyi index 21827b0c5..6b08d8827 100644 --- a/pandas-stubs/core/indexes/datetimes.pyi +++ b/pandas-stubs/core/indexes/datetimes.pyi @@ -1,4 +1,7 @@ -from datetime import tzinfo +from datetime import ( + timedelta, + tzinfo, +) from typing import overload import numpy as np @@ -90,7 +93,7 @@ def date_range( start: str | DatetimeLike | None = ..., end: str | DatetimeLike | None = ..., periods: int | None = ..., - freq: str | BaseOffset = ..., + freq: str | timedelta | Timedelta | BaseOffset = ..., tz: str | tzinfo = ..., normalize: bool = ..., name: str | None = ..., @@ -101,7 +104,7 @@ def bdate_range( start: str | DatetimeLike | None = ..., end: str | DatetimeLike | None = ..., periods: int | None = ..., - freq: str | BaseOffset = ..., + freq: str | timedelta | Timedelta | BaseOffset = ..., tz: str | tzinfo = ..., normalize: bool = ..., name: str | None = ..., diff --git a/tests/test_timefuncs.py b/tests/test_timefuncs.py index 8e5a39fea..b1b112bfc 100644 --- a/tests/test_timefuncs.py +++ b/tests/test_timefuncs.py @@ -458,7 +458,6 @@ def test_timedeltaindex_accessors() -> None: def test_some_offsets() -> None: # GH 222 - check( assert_type( CustomBusinessDay(calendar=USFederalHolidayCalendar()), CustomBusinessDay @@ -484,6 +483,35 @@ def test_some_offsets() -> None: ) # GH 224 check(assert_type(dt.date.today() - Day(), dt.date), dt.date) + # GH 235 + check( + assert_type( + pd.date_range("1/1/2022", "2/1/2022", freq=dt.timedelta(days=2)), + pd.DatetimeIndex, + ), + pd.DatetimeIndex, + ) + check( + assert_type( + pd.bdate_range("1/1/2022", "2/1/2022", freq=dt.timedelta(days=2)), + pd.DatetimeIndex, + ), + pd.DatetimeIndex, + ) + check( + assert_type( + pd.date_range("1/1/2022", "2/1/2022", freq=pd.Timedelta(days=5)), + pd.DatetimeIndex, + ), + pd.DatetimeIndex, + ) + check( + assert_type( + pd.bdate_range("1/1/2022", "2/1/2022", freq=pd.Timedelta(days=5)), + pd.DatetimeIndex, + ), + pd.DatetimeIndex, + ) def test_types_to_numpy() -> None: