18
18
19
19
class TestSorting (tm .TestCase ):
20
20
21
+ @pytest .mark .slow
21
22
def test_int64_overflow (self ):
22
23
23
24
B = np .concatenate ((np .arange (1000 ), np .arange (1000 ), np .arange (500 )))
@@ -51,9 +52,11 @@ def test_int64_overflow(self):
51
52
expected = df .groupby (tups ).sum ()['values' ]
52
53
53
54
for k , v in compat .iteritems (expected ):
54
- self .assertEqual (left [k ], right [k [::- 1 ]])
55
- self .assertEqual (left [k ], v )
56
- self .assertEqual (len (left ), len (right ))
55
+ assert left [k ] == right [k [::- 1 ]]
56
+ assert left [k ] == v
57
+ len (left ) == len (right )
58
+
59
+ def test_int64_overflow_moar (self ):
57
60
58
61
# GH9096
59
62
values = range (55109 )
@@ -62,7 +65,7 @@ def test_int64_overflow(self):
62
65
'c' : values ,
63
66
'd' : values })
64
67
grouped = data .groupby (['a' , 'b' , 'c' , 'd' ])
65
- self . assertEqual ( len (grouped ), len (values ) )
68
+ assert len (grouped ) == len (values )
66
69
67
70
arr = np .random .randint (- 1 << 12 , 1 << 12 , (1 << 15 , 5 ))
68
71
i = np .random .choice (len (arr ), len (arr ) * 4 )
@@ -76,15 +79,15 @@ def test_int64_overflow(self):
76
79
gr = df .groupby (list ('abcde' ))
77
80
78
81
# verify this is testing what it is supposed to test!
79
- self . assertTrue ( is_int64_overflow_possible (gr .grouper .shape ) )
82
+ assert is_int64_overflow_possible (gr .grouper .shape )
80
83
81
84
# mannually compute groupings
82
85
jim , joe = defaultdict (list ), defaultdict (list )
83
86
for key , a , b in zip (map (tuple , arr ), df ['jim' ], df ['joe' ]):
84
87
jim [key ].append (a )
85
88
joe [key ].append (b )
86
89
87
- self . assertEqual ( len (gr ), len (jim ) )
90
+ assert len (gr ) == len (jim )
88
91
mi = MultiIndex .from_tuples (jim .keys (), names = list ('abcde' ))
89
92
90
93
def aggr (func ):
@@ -201,7 +204,7 @@ def test_int64_overflow_issues(self):
201
204
202
205
# it works!
203
206
result = merge (df1 , df2 , how = 'outer' )
204
- self . assertTrue ( len (result ) == 2000 )
207
+ assert len (result ) == 2000
205
208
206
209
low , high , n = - 1 << 10 , 1 << 10 , 1 << 20
207
210
left = DataFrame (np .random .randint (low , high , (n , 7 )),
@@ -216,11 +219,11 @@ def test_int64_overflow_issues(self):
216
219
right ['right' ] *= - 1
217
220
218
221
out = merge (left , right , how = 'outer' )
219
- self . assertEqual ( len (out ), len (left ) )
222
+ assert len (out ) == len (left )
220
223
assert_series_equal (out ['left' ], - out ['right' ], check_names = False )
221
224
result = out .iloc [:, :- 2 ].sum (axis = 1 )
222
225
assert_series_equal (out ['left' ], result , check_names = False )
223
- self . assertTrue ( result .name is None )
226
+ assert result .name is None
224
227
225
228
out .sort_values (out .columns .tolist (), inplace = True )
226
229
out .index = np .arange (len (out ))
@@ -241,7 +244,7 @@ def test_int64_overflow_issues(self):
241
244
242
245
# confirm that this is checking what it is supposed to check
243
246
shape = left .apply (Series .nunique ).values
244
- self . assertTrue ( is_int64_overflow_possible (shape ) )
247
+ assert is_int64_overflow_possible (shape )
245
248
246
249
# add duplicates to left frame
247
250
left = concat ([left , left ], ignore_index = True )
@@ -307,7 +310,7 @@ def verify_order(df):
307
310
for how in 'left' , 'right' , 'outer' , 'inner' :
308
311
mask = jmask [how ]
309
312
frame = align (out [mask ].copy ())
310
- self . assertTrue ( mask .all () ^ mask .any () or how == 'outer' )
313
+ assert mask .all () ^ mask .any () or how == 'outer'
311
314
312
315
for sort in [False , True ]:
313
316
res = merge (left , right , how = how , sort = sort )
0 commit comments