24
24
# left operands
25
25
left_i = pd .DataFrame ({"a" : [1 , 2 , 3 ]})["a" ]
26
26
left_ts = pd .DataFrame ({"a" : [anchor + timedelta (hours = h + 1 ) for h in range (3 )]})["a" ]
27
- left_td = pd .DataFrame ({"a" : [timedelta (hours = h , minutes = 1 ) for h in range (3 )]})["a" ]
28
27
29
28
30
29
def test_sub_i_py_scalar () -> None :
@@ -155,48 +154,34 @@ def test_sub_i_pd_series() -> None:
155
154
156
155
157
156
def test_sub_ts_py_datetime () -> None :
158
- """Test pd.Series[Any] (Timestamp | Timedelta ) - Python native datetime"""
157
+ """Test pd.Series[Any] (Timestamp) - Python native datetime"""
159
158
s = anchor
160
159
a = [s + timedelta (minutes = m ) for m in range (3 )]
161
160
162
161
check (assert_type (left_ts - s , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
163
162
if TYPE_CHECKING_INVALID_USAGE :
164
163
_1 = left_ts - a # type: ignore[operator] # pyright: ignore[reportOperatorIssue]
165
- check (assert_type (left_td - s , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
166
- if TYPE_CHECKING_INVALID_USAGE :
167
- _3 = left_td - a # type: ignore[operator] # pyright: ignore[reportOperatorIssue]
168
164
169
165
check (assert_type (s - left_ts , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
170
166
if TYPE_CHECKING_INVALID_USAGE :
171
167
_5 = a - left_ts # type: ignore[operator] # pyright: ignore[reportOperatorIssue]
172
- check (assert_type (s - left_td , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
173
- if TYPE_CHECKING_INVALID_USAGE :
174
- _7 = a - left_td # type: ignore[operator] # pyright: ignore[reportOperatorIssue]
175
168
176
169
check (assert_type (left_ts .sub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
177
170
if TYPE_CHECKING_INVALID_USAGE :
178
171
left_ts .sub (a ) # type: ignore[arg-type] # pyright: ignore[reportArgumentType,reportCallIssue]
179
- check (assert_type (left_td .sub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
180
- if TYPE_CHECKING_INVALID_USAGE :
181
- left_td .sub (a ) # type: ignore[arg-type] # pyright: ignore[reportArgumentType,reportCallIssue]
182
172
183
- check (assert_type (left_td .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
173
+ check (assert_type (left_ts .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
184
174
if TYPE_CHECKING_INVALID_USAGE :
185
175
left_ts .rsub (a ) # type: ignore[arg-type] # pyright: ignore[reportArgumentType,reportCallIssue]
186
- check (assert_type (left_td .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
187
- if TYPE_CHECKING_INVALID_USAGE :
188
- left_td .rsub (a ) # type: ignore[arg-type] # pyright: ignore[reportArgumentType,reportCallIssue]
189
176
190
177
191
178
def test_sub_ts_numpy_datetime () -> None :
192
- """Test pd.Series[Any] (Timestamp | Timedelta ) - numpy datetime(s)"""
179
+ """Test pd.Series[Any] (Timestamp) - numpy datetime(s)"""
193
180
s = np .datetime64 (anchor )
194
181
a = np .array ([s + np .timedelta64 (m , "m" ) for m in range (3 )], np .datetime64 )
195
182
196
183
check (assert_type (left_ts - s , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
197
184
check (assert_type (left_ts - a , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
198
- check (assert_type (left_td - s , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
199
- check (assert_type (left_td - a , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
200
185
201
186
# `numpy` typing gives the corresponding `ndarray`s in the static type
202
187
# checking, where our `__rsub__` cannot override. At runtime, they return
@@ -208,53 +193,32 @@ def test_sub_ts_numpy_datetime() -> None:
208
193
pd .Series ,
209
194
pd .Timedelta ,
210
195
)
211
- check (assert_type (s - left_td , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
212
- check (
213
- assert_type (a - left_td , Any ), # pyright: ignore[reportAssertTypeFailure]
214
- pd .Series ,
215
- pd .Timedelta ,
216
- )
217
196
218
197
check (assert_type (left_ts .sub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
219
198
check (assert_type (left_ts .sub (a ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
220
- check (assert_type (left_td .sub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
221
- check (assert_type (left_td .sub (a ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
222
199
223
200
check (assert_type (left_ts .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
224
201
check (assert_type (left_ts .rsub (a ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
225
- check (assert_type (left_td .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
226
- check (assert_type (left_td .rsub (a ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
227
202
228
203
229
204
def test_sub_ts_pd_datetime () -> None :
230
- """Test pd.Series[Any] (Timestamp | Timedelta ) - Pandas datetime(s)"""
205
+ """Test pd.Series[Any] (Timestamp) - Pandas datetime(s)"""
231
206
s = pd .Timestamp (anchor )
232
207
a = pd .Series ([s + pd .Timedelta (minutes = m ) for m in range (3 )])
233
208
234
209
check (assert_type (left_ts - s , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
235
210
check (assert_type (left_ts - a , "pd.Series[pd.Timedelta]" ), pd .Series , pd .Timedelta )
236
- check (assert_type (left_td - s , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
237
- check (assert_type (left_td - a , "pd.Series[pd.Timedelta]" ), pd .Series , pd .Timedelta )
238
211
239
- left_ts .__rsub__ (s )
240
212
check (assert_type (s - left_ts , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
241
213
check (assert_type (a - left_ts , pd .Series ), pd .Series , pd .Timedelta )
242
- check (assert_type (s - left_td , "TimedeltaSeries" ), pd .Series , pd .Timedelta )
243
- check (assert_type (a - left_td , pd .Series ), pd .Series , pd .Timedelta )
244
214
245
215
check (assert_type (left_ts .sub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
246
216
check (
247
217
assert_type (left_ts .sub (a ), "pd.Series[pd.Timedelta]" ), pd .Series , pd .Timedelta
248
218
)
249
- check (assert_type (left_td .sub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
250
- check (
251
- assert_type (left_td .sub (a ), "pd.Series[pd.Timedelta]" ), pd .Series , pd .Timedelta
252
- )
253
219
254
220
check (assert_type (left_ts .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
255
221
check (assert_type (left_ts .rsub (a ), pd .Series ), pd .Series , pd .Timedelta )
256
- check (assert_type (left_td .rsub (s ), "TimedeltaSeries" ), pd .Series , pd .Timedelta )
257
- check (assert_type (left_td .rsub (a ), pd .Series ), pd .Series , pd .Timedelta )
258
222
259
223
260
224
def test_sub_str_py_str () -> None :
0 commit comments