@@ -1047,15 +1047,17 @@ def test_iadd_string(self):
1047
1047
1048
1048
@pytest .mark .parametrize ("second_name,expected" , [
1049
1049
(None , None ), ('name' , 'name' )])
1050
- def test_difference_name_preservation (self , second_name , expected ):
1050
+ @pytest .mark .parametrize ("sort" , [
1051
+ (True , False )])
1052
+ def test_difference_name_preservation (self , second_name , expected , sort ):
1051
1053
# TODO: replace with fixturesult
1052
1054
first = self .strIndex [5 :20 ]
1053
1055
second = self .strIndex [:10 ]
1054
1056
answer = self .strIndex [10 :20 ]
1055
1057
1056
1058
first .name = 'name'
1057
1059
second .name = second_name
1058
- result = first .difference (second )
1060
+ result = first .difference (second , sort )
1059
1061
1060
1062
assert tm .equalContents (result , answer )
1061
1063
@@ -1064,18 +1066,22 @@ def test_difference_name_preservation(self, second_name, expected):
1064
1066
else :
1065
1067
assert result .name == expected
1066
1068
1067
- def test_difference_empty_arg (self ):
1069
+ @pytest .mark .parametrize ("sort" , [
1070
+ (True , False )])
1071
+ def test_difference_empty_arg (self , sort ):
1068
1072
first = self .strIndex [5 :20 ]
1069
1073
first .name == 'name'
1070
- result = first .difference ([])
1074
+ result = first .difference ([], sort = sort )
1071
1075
1072
1076
assert tm .equalContents (result , first )
1073
1077
assert result .name == first .name
1074
1078
1075
- def test_difference_identity (self ):
1079
+ @pytest .mark .parametrize ("sort" , [
1080
+ (True , False )])
1081
+ def test_difference_identity (self , sort ):
1076
1082
first = self .strIndex [5 :20 ]
1077
1083
first .name == 'name'
1078
- result = first .difference (first )
1084
+ result = first .difference (first , sort )
1079
1085
1080
1086
assert len (result ) == 0
1081
1087
assert result .name == first .name
@@ -1124,13 +1130,15 @@ def test_symmetric_difference_non_index(self):
1124
1130
assert tm .equalContents (result , expected )
1125
1131
assert result .name == 'new_name'
1126
1132
1127
- def test_difference_type (self ):
1133
+ @pytest .mark .parametrize ("sort" , [
1134
+ (True , False )])
1135
+ def test_difference_type (self , sort ):
1128
1136
# GH 20040
1129
1137
# If taking difference of a set and itself, it
1130
1138
# needs to preserve the type of the index
1131
1139
skip_index_keys = ['repeats' ]
1132
1140
for key , index in self .generate_index_types (skip_index_keys ):
1133
- result = index .difference (index )
1141
+ result = index .difference (index , sort )
1134
1142
expected = index .drop (index )
1135
1143
tm .assert_index_equal (result , expected )
1136
1144
@@ -2344,13 +2352,15 @@ def test_intersection_different_type_base(self, klass):
2344
2352
result = first .intersection (klass (second .values ))
2345
2353
assert tm .equalContents (result , second )
2346
2354
2347
- def test_difference_base (self ):
2355
+ @pytest .mark .parametrize ("sort" , [
2356
+ (True , False )])
2357
+ def test_difference_base (self , sort ):
2348
2358
# (same results for py2 and py3 but sortedness not tested elsewhere)
2349
2359
index = self .create_index ()
2350
2360
first = index [:4 ]
2351
2361
second = index [3 :]
2352
2362
2353
- result = first .difference (second )
2363
+ result = first .difference (second , sort )
2354
2364
expected = Index ([0 , 1 , 'a' ])
2355
2365
tm .assert_index_equal (result , expected )
2356
2366
0 commit comments