diff --git a/pandas/tests/extension/base/groupby.py b/pandas/tests/extension/base/groupby.py index 339c6560d6212..3a9dbe9dfb384 100644 --- a/pandas/tests/extension/base/groupby.py +++ b/pandas/tests/extension/base/groupby.py @@ -56,6 +56,30 @@ def test_groupby_agg_extension(self, data_for_grouping): result = df.groupby("A").first() self.assert_frame_equal(result, expected) + def test_groupby_agg_extension_timedelta_cumsum_with_named_aggregation(self): + # GH#41720 + expected = pd.DataFrame( + { + "td": { + 0: pd.Timedelta("0 days 01:00:00"), + 1: pd.Timedelta("0 days 01:15:00"), + 2: pd.Timedelta("0 days 01:15:00"), + } + } + ) + df = pd.DataFrame( + { + "td": pd.Series( + ["0 days 01:00:00", "0 days 00:15:00", "0 days 01:15:00"], + dtype="timedelta64[ns]", + ), + "grps": ["a", "a", "b"], + } + ) + gb = df.groupby("grps") + result = gb.agg(td=("td", "cumsum")) + self.assert_frame_equal(result, expected) + def test_groupby_extension_no_sort(self, data_for_grouping): df = pd.DataFrame({"A": [1, 1, 2, 2, 3, 3, 1, 4], "B": data_for_grouping}) result = df.groupby("B", sort=False).A.mean()