@@ -26,73 +26,84 @@ def _cycler_helper(c, length, keys, values):
26
26
27
27
def _cycles_equal (c1 , c2 ):
28
28
assert list (c1 ) == list (c2 )
29
+ assert c1 == c2
29
30
30
31
31
- def test_creation ():
32
- c = cycler (c = 'rgb' )
33
- yield _cycler_helper , c , 3 , ['c' ], [['r' , 'g' , 'b' ]]
34
- c = cycler (c = list ('rgb' ))
35
- yield _cycler_helper , c , 3 , ['c' ], [['r' , 'g' , 'b' ]]
36
- c = cycler (cycler (c = 'rgb' ))
37
- yield _cycler_helper , c , 3 , ['c' ], [['r' , 'g' , 'b' ]]
32
+ @pytest .mark .parametrize ('c' , [cycler (c = 'rgb' ),
33
+ cycler (c = list ('rgb' )),
34
+ cycler (cycler (c = 'rgb' ))],
35
+ ids = ['from string' ,
36
+ 'from list' ,
37
+ 'from cycler' ])
38
+ def test_creation (c ):
39
+ _cycler_helper (c , 3 , ['c' ], [['r' , 'g' , 'b' ]])
38
40
39
41
40
- def test_compose ():
42
+ def test_add ():
41
43
c1 = cycler (c = 'rgb' )
42
44
c2 = cycler (lw = range (3 ))
43
- c3 = cycler (lw = range (15 ))
44
45
# addition
45
- yield _cycler_helper , c1 + c2 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )]
46
- yield _cycler_helper , c2 + c1 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )]
47
- yield _cycles_equal , c2 + c1 , c1 + c2
46
+ _cycler_helper (c1 + c2 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
47
+ _cycler_helper (c2 + c1 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
48
+ _cycles_equal (c2 + c1 , c1 + c2 )
49
+
50
+
51
+ def test_add_len_mismatch ():
48
52
# miss-matched add lengths
53
+ c1 = cycler (c = 'rgb' )
54
+ c3 = cycler (lw = range (15 ))
49
55
with pytest .raises (ValueError ):
50
56
c1 + c3
51
57
with pytest .raises (ValueError ):
52
58
c3 + c1
53
59
60
+
61
+ def test_prod ():
62
+ c1 = cycler (c = 'rgb' )
63
+ c2 = cycler (lw = range (3 ))
64
+ c3 = cycler (lw = range (15 ))
54
65
# multiplication
55
66
target = zip (* product (list ('rgb' ), range (3 )))
56
- yield ( _cycler_helper , c1 * c2 , 9 , ['c' , 'lw' ], target )
67
+ _cycler_helper ( c1 * c2 , 9 , ['c' , 'lw' ], target )
57
68
58
69
target = zip (* product (range (3 ), list ('rgb' )))
59
- yield ( _cycler_helper , c2 * c1 , 9 , ['lw' , 'c' ], target )
70
+ _cycler_helper ( c2 * c1 , 9 , ['lw' , 'c' ], target )
60
71
61
72
target = zip (* product (range (15 ), list ('rgb' )))
62
- yield ( _cycler_helper , c3 * c1 , 45 , ['lw' , 'c' ], target )
73
+ _cycler_helper ( c3 * c1 , 45 , ['lw' , 'c' ], target )
63
74
64
75
65
76
def test_inplace ():
66
77
c1 = cycler (c = 'rgb' )
67
78
c2 = cycler (lw = range (3 ))
68
79
c2 += c1
69
- yield _cycler_helper , c2 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )]
80
+ _cycler_helper ( c2 , 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
70
81
71
82
c3 = cycler (c = 'rgb' )
72
83
c4 = cycler (lw = range (3 ))
73
84
c3 *= c4
74
85
target = zip (* product (list ('rgb' ), range (3 )))
75
- yield ( _cycler_helper , c3 , 9 , ['c' , 'lw' ], target )
86
+ _cycler_helper ( c3 , 9 , ['c' , 'lw' ], target )
76
87
77
88
78
89
def test_constructor ():
79
90
c1 = cycler (c = 'rgb' )
80
91
c2 = cycler (ec = c1 )
81
- yield _cycler_helper , c1 + c2 , 3 , ['c' , 'ec' ], [['r' , 'g' , 'b' ]]* 2
92
+ _cycler_helper ( c1 + c2 , 3 , ['c' , 'ec' ], [['r' , 'g' , 'b' ]]* 2 )
82
93
c3 = cycler (c = c1 )
83
- yield _cycler_helper , c3 + c2 , 3 , ['c' , 'ec' ], [['r' , 'g' , 'b' ]]* 2
94
+ _cycler_helper ( c3 + c2 , 3 , ['c' , 'ec' ], [['r' , 'g' , 'b' ]]* 2 )
84
95
# Using a non-string hashable
85
96
c4 = cycler (1 , range (3 ))
86
- yield _cycler_helper , c4 + c1 , 3 , [1 , 'c' ], [range (3 ), ['r' , 'g' , 'b' ]]
97
+ _cycler_helper ( c4 + c1 , 3 , [1 , 'c' ], [range (3 ), ['r' , 'g' , 'b' ]])
87
98
88
99
# addition using cycler()
89
- yield ( _cycler_helper , cycler (c = 'rgb' , lw = range (3 )),
90
- 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
91
- yield ( _cycler_helper , cycler (lw = range (3 ), c = 'rgb' ),
92
- 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
100
+ _cycler_helper ( cycler (c = 'rgb' , lw = range (3 )),
101
+ 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
102
+ _cycler_helper ( cycler (lw = range (3 ), c = 'rgb' ),
103
+ 3 , ['c' , 'lw' ], [list ('rgb' ), range (3 )])
93
104
# Purposely mixing them
94
- yield ( _cycler_helper , cycler (c = range (3 ), lw = c1 ),
95
- 3 , ['c' , 'lw' ], [range (3 ), list ('rgb' )])
105
+ _cycler_helper ( cycler (c = range (3 ), lw = c1 ),
106
+ 3 , ['c' , 'lw' ], [range (3 ), list ('rgb' )])
96
107
97
108
98
109
def test_failures ():
@@ -114,24 +125,24 @@ def test_simplify():
114
125
c1 = cycler (c = 'rgb' )
115
126
c2 = cycler (ec = c1 )
116
127
for c in [c1 * c2 , c2 * c1 , c1 + c2 ]:
117
- yield _cycles_equal , c , c .simplify ()
128
+ _cycles_equal ( c , c .simplify () )
118
129
119
130
120
131
def test_multiply ():
121
132
c1 = cycler (c = 'rgb' )
122
- yield _cycler_helper , 2 * c1 , 6 , ['c' ], ['rgb' * 2 ]
133
+ _cycler_helper ( 2 * c1 , 6 , ['c' ], ['rgb' * 2 ])
123
134
124
135
c2 = cycler (ec = c1 )
125
136
c3 = c1 * c2
126
137
127
- yield _cycles_equal , 2 * c3 , c3 * 2
138
+ _cycles_equal ( 2 * c3 , c3 * 2 )
128
139
129
140
130
141
def test_mul_fails ():
131
142
c1 = cycler (c = 'rgb' )
132
- pytest .raises (TypeError , mul , c1 , 2.0 )
133
- pytest .raises (TypeError , mul , c1 , 'a' )
134
- pytest .raises (TypeError , mul , c1 , [])
143
+ pytest .raises (TypeError , mul , c1 , 2.0 )
144
+ pytest .raises (TypeError , mul , c1 , 'a' )
145
+ pytest .raises (TypeError , mul , c1 , [])
135
146
136
147
137
148
def test_getitem ():
@@ -141,7 +152,7 @@ def test_getitem():
141
152
slice (None , None , - 1 ),
142
153
slice (1 , 5 , None ),
143
154
slice (0 , 5 , 2 )):
144
- yield _cycles_equal , c1 [slc ], cycler (3 , widths [slc ])
155
+ _cycles_equal ( c1 [slc ], cycler (3 , widths [slc ]) )
145
156
146
157
147
158
def test_fail_getime ():
@@ -164,14 +175,14 @@ def test_repr():
164
175
c_sum_rpr = "(cycler('c', ['r', 'g', 'b']) + cycler('3rd', [0, 1, 2]))"
165
176
c_prod_rpr = "(cycler('c', ['r', 'g', 'b']) * cycler('3rd', [0, 1, 2]))"
166
177
167
- yield _repr_tester_helper , '__repr__' , c + c2 , c_sum_rpr
168
- yield _repr_tester_helper , '__repr__' , c * c2 , c_prod_rpr
178
+ _repr_tester_helper ( '__repr__' , c + c2 , c_sum_rpr )
179
+ _repr_tester_helper ( '__repr__' , c * c2 , c_prod_rpr )
169
180
170
181
sum_html = "<table><th>'3rd'</th><th>'c'</th><tr><td>0</td><td>'r'</td></tr><tr><td>1</td><td>'g'</td></tr><tr><td>2</td><td>'b'</td></tr></table>"
171
182
prod_html = "<table><th>'3rd'</th><th>'c'</th><tr><td>0</td><td>'r'</td></tr><tr><td>1</td><td>'r'</td></tr><tr><td>2</td><td>'r'</td></tr><tr><td>0</td><td>'g'</td></tr><tr><td>1</td><td>'g'</td></tr><tr><td>2</td><td>'g'</td></tr><tr><td>0</td><td>'b'</td></tr><tr><td>1</td><td>'b'</td></tr><tr><td>2</td><td>'b'</td></tr></table>"
172
183
173
- yield _repr_tester_helper , '_repr_html_' , c + c2 , sum_html
174
- yield _repr_tester_helper , '_repr_html_' , c * c2 , prod_html
184
+ _repr_tester_helper ( '_repr_html_' , c + c2 , sum_html )
185
+ _repr_tester_helper ( '_repr_html_' , c * c2 , prod_html )
175
186
176
187
177
188
def test_call ():
@@ -264,17 +275,17 @@ def _eq_test_helper(a, b, res):
264
275
def test_eq ():
265
276
a = cycler (c = 'rgb' )
266
277
b = cycler (c = 'rgb' )
267
- yield _eq_test_helper , a , b , True
268
- yield _eq_test_helper , a , b [::- 1 ], False
278
+ _eq_test_helper ( a , b , True )
279
+ _eq_test_helper ( a , b [::- 1 ], False )
269
280
c = cycler (lw = range (3 ))
270
- yield _eq_test_helper , a + c , c + a , True
271
- yield _eq_test_helper , a + c , c + b , True
272
- yield _eq_test_helper , a * c , c * a , False
273
- yield _eq_test_helper , a , c , False
281
+ _eq_test_helper ( a + c , c + a , True )
282
+ _eq_test_helper ( a + c , c + b , True )
283
+ _eq_test_helper ( a * c , c * a , False )
284
+ _eq_test_helper ( a , c , False )
274
285
d = cycler (c = 'ymk' )
275
- yield _eq_test_helper , b , d , False
286
+ _eq_test_helper ( b , d , False )
276
287
e = cycler (c = 'orange' )
277
- yield _eq_test_helper , b , e , False
288
+ _eq_test_helper ( b , e , False )
278
289
279
290
280
291
def test_cycler_exceptions ():
@@ -323,15 +334,15 @@ def test_by_key_add():
323
334
cy = cycler (c = input_dict ['c' ]) + cycler (lw = input_dict ['lw' ])
324
335
res = cy .by_key ()
325
336
assert res == input_dict
326
- yield _by_key_helper , cy
337
+ _by_key_helper ( cy )
327
338
328
339
329
340
def test_by_key_mul ():
330
341
input_dict = dict (c = list ('rg' ), lw = [1 , 2 , 3 ])
331
342
cy = cycler (c = input_dict ['c' ]) * cycler (lw = input_dict ['lw' ])
332
343
res = cy .by_key ()
333
344
assert input_dict ['lw' ] * len (input_dict ['c' ]) == res ['lw' ]
334
- yield _by_key_helper , cy
345
+ _by_key_helper ( cy )
335
346
336
347
337
348
def test_contains ():
0 commit comments