diff --git a/pandas-stubs/core/series.pyi b/pandas-stubs/core/series.pyi index 8ea4612b5..327b0a2b1 100644 --- a/pandas-stubs/core/series.pyi +++ b/pandas-stubs/core/series.pyi @@ -2334,6 +2334,13 @@ class TimedeltaSeries(Series[Timedelta]): **kwargs: Any, ) -> Timedelta: ... def diff(self, periods: int = ...) -> TimedeltaSeries: ... # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride] + def cumsum( + self, + axis: AxisIndex | None = ..., + skipna: _bool = ..., + *args: Any, + **kwargs: Any, + ) -> TimedeltaSeries: ... class PeriodSeries(Series[Period]): @property diff --git a/tests/test_series.py b/tests/test_series.py index 570519971..99e6d670d 100644 --- a/tests/test_series.py +++ b/tests/test_series.py @@ -3813,3 +3813,14 @@ def test_series_items() -> None: s = pd.Series(data=[1, 2, 3, 4], index=["cow", "coal", "coalesce", ""]) check(assert_type(next(s.items()), tuple[Hashable, int]), tuple) check(assert_type(s.items(), Iterator[tuple[Hashable, int]]), Iterator) + + +def test_cumsum_timedelta() -> None: + + s = pd.Series(pd.to_timedelta([1, 2, 3], "h")) + check(assert_type(s.cumsum(), "TimedeltaSeries"), pd.Series, pd.Timedelta) + check( + assert_type(pd.Timestamp(0) + s.cumsum(), "TimestampSeries"), + pd.Series, + pd.Timestamp, + )