@@ -180,13 +180,13 @@ def inter_df_math_helper_one_side(modin_series, pandas_series, op):
180
180
pass
181
181
182
182
183
- def create_test_series (vals , sort = False ):
183
+ def create_test_series (vals , sort = False , ** kwargs ):
184
184
if isinstance (vals , dict ):
185
- modin_series = pd .Series (vals [next (iter (vals .keys ()))])
186
- pandas_series = pandas .Series (vals [next (iter (vals .keys ()))])
185
+ modin_series = pd .Series (vals [next (iter (vals .keys ()))], ** kwargs )
186
+ pandas_series = pandas .Series (vals [next (iter (vals .keys ()))], ** kwargs )
187
187
else :
188
- modin_series = pd .Series (vals )
189
- pandas_series = pandas .Series (vals )
188
+ modin_series = pd .Series (vals , ** kwargs )
189
+ pandas_series = pandas .Series (vals , ** kwargs )
190
190
if sort :
191
191
modin_series = modin_series .sort_values ().reset_index (drop = True )
192
192
pandas_series = pandas_series .sort_values ().reset_index (drop = True )
@@ -526,6 +526,22 @@ def test___setitem__(data):
526
526
df_equals (modin_series , pandas_series )
527
527
528
528
529
+ @pytest .mark .parametrize (
530
+ "key" ,
531
+ [
532
+ pytest .param (slice (1 , 3 ), id = "numeric_slice" ),
533
+ pytest .param (slice ("a" , "c" ), id = "index_based_slice" ),
534
+ pytest .param (["a" , "c" , "e" ], id = "list_of_labels" ),
535
+ pytest .param ([True , False , True , False , True ], id = "boolean_mask" ),
536
+ ],
537
+ )
538
+ def test___setitem___non_hashable (key ):
539
+ md_sr , pd_sr = create_test_series ([1 , 2 , 3 , 4 , 5 ], index = ["a" , "b" , "c" , "d" , "e" ])
540
+ md_sr [key ] = 10
541
+ pd_sr [key ] = 10
542
+ df_equals (md_sr , pd_sr )
543
+
544
+
529
545
@pytest .mark .parametrize ("data" , test_data_values , ids = test_data_keys )
530
546
def test___sizeof__ (data ):
531
547
modin_series , pandas_series = create_test_series (data )
0 commit comments