From d20e166cf0dad02d7c58aa87041306afa189774a Mon Sep 17 00:00:00 2001 From: theoniko Date: Sat, 5 Dec 2020 21:30:41 +0000 Subject: [PATCH] BUG: BDay() offsetting not behaving as expected --- pandas/tests/tseries/offsets/test_offsets.py | 34 ++++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/pandas/tests/tseries/offsets/test_offsets.py b/pandas/tests/tseries/offsets/test_offsets.py index 1ac98247780b7..325a5311829dc 100644 --- a/pandas/tests/tseries/offsets/test_offsets.py +++ b/pandas/tests/tseries/offsets/test_offsets.py @@ -19,11 +19,9 @@ from pandas.compat.numpy import np_datetime64_compat from pandas.errors import PerformanceWarning +from pandas import DatetimeIndex, Series, Timedelta, date_range, read_pickle import pandas._testing as tm -from pandas.core.indexes.datetimes import DatetimeIndex, date_range -from pandas.core.series import Series -from pandas.io.pickle import read_pickle from pandas.tseries.holiday import USFederalHolidayCalendar import pandas.tseries.offsets as offsets from pandas.tseries.offsets import ( @@ -2326,6 +2324,36 @@ def test_datetimeindex(self): for idx in [idx1, idx2, idx3]: tm.assert_index_equal(idx, expected) + def test_bday_ignores_timedeltas(self): + idx = date_range("2010/02/01", "2010/02/10", freq="12H") + t1 = idx + BDay(offset=Timedelta(3, unit="H")) + + expected = DatetimeIndex( + [ + "2010-02-02 03:00:00", + "2010-02-02 15:00:00", + "2010-02-03 03:00:00", + "2010-02-03 15:00:00", + "2010-02-04 03:00:00", + "2010-02-04 15:00:00", + "2010-02-05 03:00:00", + "2010-02-05 15:00:00", + "2010-02-08 03:00:00", + "2010-02-08 15:00:00", + "2010-02-08 03:00:00", + "2010-02-08 15:00:00", + "2010-02-08 03:00:00", + "2010-02-08 15:00:00", + "2010-02-09 03:00:00", + "2010-02-09 15:00:00", + "2010-02-10 03:00:00", + "2010-02-10 15:00:00", + "2010-02-11 03:00:00", + ], + freq=None, + ) + tm.assert_index_equal(t1, expected) + class TestCustomBusinessHour(Base): _offset = CustomBusinessHour