3
3
import six
4
4
from six .moves import zip , range
5
5
from cycler import cycler , Cycler , concat
6
- from nose .tools import (assert_equal , assert_not_equal ,
7
- assert_raises , assert_true )
6
+ import pytest
8
7
from itertools import product , cycle , chain
9
8
from operator import add , iadd , mul , imul
10
9
from collections import defaultdict
11
10
12
11
13
12
def _cycler_helper (c , length , keys , values ):
14
- assert_equal (len (c ), length )
15
- assert_equal (len (c ), len (list (c )))
16
- assert_equal (c .keys , set (keys ))
17
-
13
+ assert len (c ) == length
14
+ assert len (c ) == len (list (c ))
15
+ assert c .keys == set (keys )
18
16
for k , vals in zip (keys , values ):
19
17
for v , v_target in zip (c , vals ):
20
- assert_equal ( v [k ], v_target )
18
+ assert v [k ] == v_target
21
19
22
20
23
21
def _cycles_equal (c1 , c2 ):
24
- assert_equal ( list (c1 ), list (c2 ) )
22
+ assert list (c1 ) == list (c2 )
25
23
26
24
27
25
def test_creation ():
@@ -42,8 +40,10 @@ def test_compose():
42
40
yield _cycler_helper , c2 + c1 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )]
43
41
yield _cycles_equal , c2 + c1 , c1 + c2
44
42
# miss-matched add lengths
45
- assert_raises (ValueError , add , c1 , c3 )
46
- assert_raises (ValueError , add , c3 , c1 )
43
+ with pytest .raises (ValueError ):
44
+ c1 + c3
45
+ with pytest .raises (ValueError ):
46
+ c3 + c1
47
47
48
48
# multiplication
49
49
target = zip (* product (list ('rgb' ), range (3 )))
@@ -92,16 +92,16 @@ def test_constructor():
92
92
def test_failures ():
93
93
c1 = cycler (c = 'rgb' )
94
94
c2 = cycler (c = c1 )
95
- assert_raises (ValueError , add , c1 , c2 )
96
- assert_raises (ValueError , iadd , c1 , c2 )
97
- assert_raises (ValueError , mul , c1 , c2 )
98
- assert_raises (ValueError , imul , c1 , c2 )
99
- assert_raises (TypeError , iadd , c2 , 'aardvark' )
100
- assert_raises (TypeError , imul , c2 , 'aardvark' )
95
+ pytest . raises (ValueError , add , c1 , c2 )
96
+ pytest . raises (ValueError , iadd , c1 , c2 )
97
+ pytest . raises (ValueError , mul , c1 , c2 )
98
+ pytest . raises (ValueError , imul , c1 , c2 )
99
+ pytest . raises (TypeError , iadd , c2 , 'aardvark' )
100
+ pytest . raises (TypeError , imul , c2 , 'aardvark' )
101
101
102
102
c3 = cycler (ec = c1 )
103
103
104
- assert_raises (ValueError , cycler , c = c2 + c3 )
104
+ pytest . raises (ValueError , cycler , c = c2 + c3 )
105
105
106
106
107
107
def test_simplify ():
@@ -123,9 +123,9 @@ def test_multiply():
123
123
124
124
def test_mul_fails ():
125
125
c1 = cycler (c = 'rgb' )
126
- assert_raises (TypeError , mul , c1 , 2.0 )
127
- assert_raises (TypeError , mul , c1 , 'a' )
128
- assert_raises (TypeError , mul , c1 , [])
126
+ pytest . raises (TypeError , mul , c1 , 2.0 )
127
+ pytest . raises (TypeError , mul , c1 , 'a' )
128
+ pytest . raises (TypeError , mul , c1 , [])
129
129
130
130
131
131
def test_getitem ():
@@ -140,15 +140,14 @@ def test_getitem():
140
140
141
141
def test_fail_getime ():
142
142
c1 = cycler (lw = range (15 ))
143
- assert_raises (ValueError , Cycler .__getitem__ , c1 , 0 )
144
- assert_raises (ValueError , Cycler .__getitem__ , c1 , [0 , 1 ])
143
+ pytest . raises (ValueError , Cycler .__getitem__ , c1 , 0 )
144
+ pytest . raises (ValueError , Cycler .__getitem__ , c1 , [0 , 1 ])
145
145
146
146
147
147
def _repr_tester_helper (rpr_func , cyc , target_repr ):
148
148
test_repr = getattr (cyc , rpr_func )()
149
149
150
- assert_equal (six .text_type (test_repr ),
151
- six .text_type (target_repr ))
150
+ assert six .text_type (test_repr ) == six .text_type (target_repr )
152
151
153
152
154
153
def test_repr ():
@@ -172,13 +171,13 @@ def test_repr():
172
171
def test_call ():
173
172
c = cycler (c = 'rgb' )
174
173
c_cycle = c ()
175
- assert_true ( isinstance (c_cycle , cycle ) )
174
+ assert isinstance (c_cycle , cycle )
176
175
j = 0
177
176
for a , b in zip (2 * c , c_cycle ):
178
177
j += 1
179
- assert_equal ( a , b )
178
+ assert a == b
180
179
181
- assert_equal ( j , len (c ) * 2 )
180
+ assert j == len (c ) * 2
182
181
183
182
184
183
def test_copying ():
@@ -202,21 +201,21 @@ def test_copying():
202
201
203
202
c_after = (c1 + c2 ) * c3
204
203
205
- assert_equal ( c1 , cycler ('c' , [1 , 2 , 3 ]) )
206
- assert_equal ( c2 , cycler ('lw' , ['r' , 'g' , 'b' ]) )
207
- assert_equal ( c3 , cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]) )
208
- assert_equal ( c_before , (cycler (c = [1 , 2 , 3 ], lw = ['r' , 'g' , 'b' ]) *
209
- cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]) ))
210
- assert_equal ( c_after , (cycler (c = [1 , 2 , 3 ], lw = ['r' , 'g' , 'b' ]) *
211
- cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]) ))
204
+ assert c1 == cycler ('c' , [1 , 2 , 3 ])
205
+ assert c2 == cycler ('lw' , ['r' , 'g' , 'b' ])
206
+ assert c3 == cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]])
207
+ assert c_before == (cycler (c = [1 , 2 , 3 ], lw = ['r' , 'g' , 'b' ]) *
208
+ cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]))
209
+ assert c_after == (cycler (c = [1 , 2 , 3 ], lw = ['r' , 'g' , 'b' ]) *
210
+ cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]))
212
211
213
212
# Make sure that changing the key for a specific cycler
214
213
# doesn't break things for a composed cycler
215
214
c = (c1 + c2 ) * c3
216
215
c4 = cycler ('bar' , c3 )
217
- assert_equal ( c , (cycler (c = [1 , 2 , 3 ], lw = ['r' , 'g' , 'b' ]) *
218
- cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]) ))
219
- assert_equal ( c3 , cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]) )
216
+ assert c == (cycler (c = [1 , 2 , 3 ], lw = ['r' , 'g' , 'b' ]) *
217
+ cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]]))
218
+ assert c3 == cycler ('foo' , [['y' , 'g' , 'blue' ], ['b' , 'k' ]])
220
219
221
220
222
221
def test_keychange ():
@@ -225,35 +224,35 @@ def test_keychange():
225
224
c3 = cycler ('ec' , 'yk' )
226
225
227
226
c3 .change_key ('ec' , 'edgecolor' )
228
- assert_equal ( c3 , cycler ('edgecolor' , c3 ) )
227
+ assert c3 == cycler ('edgecolor' , c3 )
229
228
230
229
c = c1 + c2
231
230
c .change_key ('lw' , 'linewidth' )
232
231
# Changing a key in one cycler should have no
233
232
# impact in the original cycler.
234
- assert_equal ( c2 , cycler ('lw' , [1 , 2 , 3 ]) )
235
- assert_equal ( c , c1 + cycler ('linewidth' , c2 ) )
233
+ assert c2 == cycler ('lw' , [1 , 2 , 3 ])
234
+ assert c == c1 + cycler ('linewidth' , c2 )
236
235
237
236
c = (c1 + c2 ) * c3
238
237
c .change_key ('c' , 'color' )
239
- assert_equal ( c1 , cycler ('c' , 'rgb' ) )
240
- assert_equal ( c , (cycler ('color' , c1 ) + c2 ) * c3 )
238
+ assert c1 == cycler ('c' , 'rgb' )
239
+ assert c == (cycler ('color' , c1 ) + c2 ) * c3
241
240
242
241
# Perfectly fine, it is a no-op
243
242
c .change_key ('color' , 'color' )
244
- assert_equal ( c , (cycler ('color' , c1 ) + c2 ) * c3 )
243
+ assert c == (cycler ('color' , c1 ) + c2 ) * c3
245
244
246
245
# Can't change a key to one that is already in there
247
- assert_raises (ValueError , Cycler .change_key , c , 'color' , 'lw' )
246
+ pytest . raises (ValueError , Cycler .change_key , c , 'color' , 'lw' )
248
247
# Can't change a key you don't have
249
- assert_raises (KeyError , Cycler .change_key , c , 'c' , 'foobar' )
248
+ pytest . raises (KeyError , Cycler .change_key , c , 'c' , 'foobar' )
250
249
251
250
252
251
def _eq_test_helper (a , b , res ):
253
252
if res :
254
- assert_equal ( a , b )
253
+ assert a == b
255
254
else :
256
- assert_not_equal ( a , b )
255
+ assert a != b
257
256
258
257
259
258
def test_eq ():
@@ -273,34 +272,34 @@ def test_eq():
273
272
274
273
275
274
def test_cycler_exceptions ():
276
- assert_raises (TypeError , cycler )
277
- assert_raises (TypeError , cycler , 'c' , 'rgb' , lw = range (3 ))
278
- assert_raises (TypeError , cycler , 'c' )
279
- assert_raises (TypeError , cycler , 'c' , 'rgb' , 'lw' , range (3 ))
275
+ pytest . raises (TypeError , cycler )
276
+ pytest . raises (TypeError , cycler , 'c' , 'rgb' , lw = range (3 ))
277
+ pytest . raises (TypeError , cycler , 'c' )
278
+ pytest . raises (TypeError , cycler , 'c' , 'rgb' , 'lw' , range (3 ))
280
279
281
280
282
281
def test_starange_init ():
283
282
c = cycler ('r' , 'rgb' )
284
283
c2 = cycler ('lw' , range (3 ))
285
284
cy = Cycler (list (c ), list (c2 ), zip )
286
- assert_equal ( cy , c + c2 )
285
+ assert cy == c + c2
287
286
288
287
289
288
def test_concat ():
290
289
a = cycler ('a' , range (3 ))
291
290
b = cycler ('a' , 'abc' )
292
291
for con , chn in zip (a .concat (b ), chain (a , b )):
293
- assert_equal ( con , chn )
292
+ assert con == chn
294
293
295
294
for con , chn in zip (concat (a , b ), chain (a , b )):
296
- assert_equal ( con , chn )
295
+ assert con == chn
297
296
298
297
299
298
def test_concat_fail ():
300
299
a = cycler ('a' , range (3 ))
301
300
b = cycler ('b' , range (3 ))
302
- assert_raises (ValueError , concat , a , b )
303
- assert_raises (ValueError , a .concat , b )
301
+ pytest . raises (ValueError , concat , a , b )
302
+ pytest . raises (ValueError , a .concat , b )
304
303
305
304
306
305
def _by_key_helper (cy ):
@@ -310,23 +309,22 @@ def _by_key_helper(cy):
310
309
for k , v in sty .items ():
311
310
target [k ].append (v )
312
311
313
- assert_equal ( res , target )
312
+ assert res == target
314
313
315
314
316
315
def test_by_key_add ():
317
316
input_dict = dict (c = list ('rgb' ), lw = [1 , 2 , 3 ])
318
317
cy = cycler (c = input_dict ['c' ]) + cycler (lw = input_dict ['lw' ])
319
318
res = cy .by_key ()
320
- assert_equal ( res , input_dict )
319
+ assert res == input_dict
321
320
yield _by_key_helper , cy
322
321
323
322
324
323
def test_by_key_mul ():
325
324
input_dict = dict (c = list ('rg' ), lw = [1 , 2 , 3 ])
326
325
cy = cycler (c = input_dict ['c' ]) * cycler (lw = input_dict ['lw' ])
327
326
res = cy .by_key ()
328
- assert_equal (input_dict ['lw' ] * len (input_dict ['c' ]),
329
- res ['lw' ])
327
+ assert input_dict ['lw' ] * len (input_dict ['c' ]) == res ['lw' ]
330
328
yield _by_key_helper , cy
331
329
332
330
0 commit comments