Skip to content

Commit cc6b19b

Browse files
committed
review edits
1 parent 7b0cf28 commit cc6b19b

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

pandas/tests/indexes/datetimes/test_arithmetic.py

+40
Original file line numberDiff line numberDiff line change
@@ -129,50 +129,90 @@ def test_dti_add_tdi(self, tz):
129129
tdi = pd.timedelta_range('0 days', periods=10)
130130
expected = pd.date_range('2017-01-01', periods=10, tz=tz)
131131

132+
# add with TimdeltaIndex
132133
result = dti + tdi
133134
tm.assert_index_equal(result, expected)
134135

136+
result = tdi + dti
137+
tm.assert_index_equal(result, expected)
138+
139+
# add with timedelta64 array
135140
result = dti + tdi.values
136141
tm.assert_index_equal(result, expected)
137142

143+
result = tdi.values + dti
144+
tm.assert_index_equal(result, expected)
145+
138146
def test_dti_iadd_tdi(self, tz):
139147
# GH 17558
148+
dti = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
140149
tdi = pd.timedelta_range('0 days', periods=10)
141150
expected = pd.date_range('2017-01-01', periods=10, tz=tz)
142151

152+
# iadd with TimdeltaIndex
143153
result = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
144154
result += tdi
145155
tm.assert_index_equal(result, expected)
146156

157+
result = pd.timedelta_range('0 days', periods=10)
158+
result += dti
159+
tm.assert_index_equal(result, expected)
160+
161+
# iadd with timedelta64 array
147162
result = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
148163
result += tdi.values
149164
tm.assert_index_equal(result, expected)
150165

166+
result = pd.timedelta_range('0 days', periods=10)
167+
result += dti
168+
tm.assert_index_equal(result, expected)
169+
151170
def test_dti_sub_tdi(self, tz):
152171
# GH 17558
153172
dti = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
154173
tdi = pd.timedelta_range('0 days', periods=10)
155174
expected = pd.date_range('2017-01-01', periods=10, tz=tz, freq='-1D')
156175

176+
# sub with TimedeltaIndex
157177
result = dti - tdi
158178
tm.assert_index_equal(result, expected)
159179

180+
msg = 'cannot subtract TimedeltaIndex and DatetimeIndex'
181+
with tm.assert_raises_regex(TypeError, msg):
182+
tdi - dti
183+
184+
# sub with timedelta64 array
160185
result = dti - tdi.values
161186
tm.assert_index_equal(result, expected)
162187

188+
msg = 'cannot perform __neg__ with this index type:'
189+
with tm.assert_raises_regex(TypeError, msg):
190+
tdi.values - dti
191+
163192
def test_dti_isub_tdi(self, tz):
164193
# GH 17558
194+
dti = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
165195
tdi = pd.timedelta_range('0 days', periods=10)
166196
expected = pd.date_range('2017-01-01', periods=10, tz=tz, freq='-1D')
167197

198+
# isub with TimedeltaIndex
168199
result = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
169200
result -= tdi
170201
tm.assert_index_equal(result, expected)
171202

203+
msg = 'cannot subtract TimedeltaIndex and DatetimeIndex'
204+
with tm.assert_raises_regex(TypeError, msg):
205+
tdi -= dti
206+
207+
# isub with timedelta64 array
172208
result = DatetimeIndex([Timestamp('2017-01-01', tz=tz)] * 10)
173209
result -= tdi.values
174210
tm.assert_index_equal(result, expected)
175211

212+
msg = 'cannot perform __neg__ with this index type:'
213+
with tm.assert_raises_regex(TypeError, msg):
214+
tdi.values -= dti
215+
176216
# -------------------------------------------------------------
177217
# Binary Operations DatetimeIndex and datetime-like
178218
# TODO: A couple other tests belong in this section. Move them in

0 commit comments

Comments
 (0)