@@ -97,7 +97,7 @@ def test_period_properties() -> None:
97
97
check (assert_type (p2 .freq , BaseOffset ), Day )
98
98
99
99
100
- def test_periof_add_subtract () -> None :
100
+ def test_period_add_subtract () -> None :
101
101
p = pd .Period ("2012-1-1" , freq = "D" )
102
102
103
103
as_pd_td = pd .Timedelta (1 , "D" )
@@ -143,27 +143,36 @@ def test_periof_add_subtract() -> None:
143
143
check (assert_type (p - as_nat , NaTType ), NaTType )
144
144
check (assert_type (p - p .freq , pd .Period ), pd .Period )
145
145
146
+ # The __radd__ and __rsub__ methods are included to
147
+ # establish the location of the concrete implementation
148
+ # Those missing are using the __add__ of the other class
146
149
check (assert_type (as_pd_td + p , pd .Period ), pd .Period )
150
+ check (assert_type (p .__radd__ (as_pd_td ), pd .Period ), pd .Period )
151
+
147
152
check (assert_type (as_dt_td + p , pd .Period ), pd .Period )
153
+ check (assert_type (p .__radd__ (as_dt_td ), pd .Period ), pd .Period )
154
+
148
155
check (assert_type (as_np_td + p , pd .Period ), pd .Period )
156
+ check (assert_type (p .__radd__ (as_np_td ), pd .Period ), pd .Period )
157
+
149
158
check (assert_type (as_np_i64 + p , pd .Period ), pd .Period )
159
+ check (assert_type (p .__radd__ (as_np_i64 ), pd .Period ), pd .Period )
160
+
150
161
check (assert_type (as_int + p , pd .Period ), pd .Period )
162
+ check (assert_type (p .__radd__ (as_int ), pd .Period ), pd .Period )
163
+
151
164
check (assert_type (as_td_series + p , PeriodSeries ), pd .Series , pd .Period )
152
- # TODO: Improve Index to not handle __add__(period)
153
- check (assert_type (as_timedelta_idx + p , pd .Index ), pd .PeriodIndex )
154
- check (assert_type (as_nat + p , NaTType ), NaTType )
155
- check (assert_type (p .freq + p , pd .Period ), pd .Period )
156
165
157
- check (assert_type (as_period_index - p , pd .Index ), pd .Index )
166
+ check (assert_type (as_timedelta_idx + p , pd .PeriodIndex ), pd .PeriodIndex )
158
167
159
- check (assert_type (p .__radd__ (as_pd_td ), pd .Period ), pd .Period )
160
- check (assert_type (p .__radd__ (as_dt_td ), pd .Period ), pd .Period )
161
- check (assert_type (p .__radd__ (as_np_td ), pd .Period ), pd .Period )
162
- check (assert_type (p .__radd__ (as_np_i64 ), pd .Period ), pd .Period )
163
- check (assert_type (p .__radd__ (as_int ), pd .Period ), pd .Period )
168
+ check (assert_type (as_nat + p , NaTType ), NaTType )
164
169
check (assert_type (p .__radd__ (as_nat ), NaTType ), NaTType )
170
+
171
+ check (assert_type (p .freq + p , pd .Period ), pd .Period )
165
172
check (assert_type (p .__radd__ (p .freq ), pd .Period ), pd .Period )
166
173
174
+ check (assert_type (as_period_index - p , pd .Index ), pd .Index )
175
+
167
176
168
177
def test_period_cmp () -> None :
169
178
p = pd .Period ("2012-1-1" , freq = "D" )
0 commit comments