Skip to content

Commit 37b22c7

Browse files
mroeschkejreback
authored andcommitted
TST: Test timedelta arithmetic (#9396) (#14906)
1 parent f3c5a42 commit 37b22c7

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

pandas/tseries/tests/test_timedeltas.py

+22
Original file line numberDiff line numberDiff line change
@@ -1203,6 +1203,28 @@ def test_implementation_limits(self):
12031203
with tm.assertRaises(OverflowError):
12041204
Timedelta(max_td.value + 1, 'ns')
12051205

1206+
def test_timedelta_arithmetic(self):
1207+
data = pd.Series(['nat', '32 days'], dtype='timedelta64[ns]')
1208+
deltas = [timedelta(days=1), Timedelta(1, unit='D')]
1209+
for delta in deltas:
1210+
result_method = data.add(delta)
1211+
result_operator = data + delta
1212+
expected = pd.Series(['nat', '33 days'], dtype='timedelta64[ns]')
1213+
tm.assert_series_equal(result_operator, expected)
1214+
tm.assert_series_equal(result_method, expected)
1215+
1216+
result_method = data.sub(delta)
1217+
result_operator = data - delta
1218+
expected = pd.Series(['nat', '31 days'], dtype='timedelta64[ns]')
1219+
tm.assert_series_equal(result_operator, expected)
1220+
tm.assert_series_equal(result_method, expected)
1221+
# GH 9396
1222+
result_method = data.div(delta)
1223+
result_operator = data / delta
1224+
expected = pd.Series([np.nan, 32.], dtype='float64')
1225+
tm.assert_series_equal(result_operator, expected)
1226+
tm.assert_series_equal(result_method, expected)
1227+
12061228

12071229
class TestTimedeltaIndex(tm.TestCase):
12081230
_multiprocess_can_split_ = True

0 commit comments

Comments
 (0)