@@ -275,9 +275,9 @@ class ModifyTest(unittest.TestCase):
275275 range (20 ),
276276 [1 , 2 , 3 ],
277277 (2 ,),
278- set (( 13 , 48 , 211 )) ,
278+ { 13 , 48 , 211 } ,
279279 frozenset ((15 , 8 , 6 )),
280- dict ([( 1 , 2 ), ( 3 , 4 )]) ,
280+ { 1 : 2 , 3 : 4 } ,
281281 ]
282282
283283 non_sequences = [
@@ -308,16 +308,27 @@ def get_genexpr_gi_code(self, new_iter):
308308 err_msg_pattern_genexpr = "'%s' object is not an iterator"
309309
310310 for get_genexpr in [get_genexpr_f_locals , get_genexpr_gi_code ]:
311+ base_name = get_genexpr .__name__
311312 for seq in self .sequences :
312- err_msg_genexpr = err_msg_pattern_genexpr % type (seq ).__name__
313- with self .assertRaisesRegex (TypeError , err_msg_genexpr ):
314- list (get_genexpr (self , seq ))
315- self .assertListEqual (list (get_genexpr (self , iter (seq ))),
316- list (seq ))
313+ test_name = f"{ base_name } _seq_{ type (seq ).__name__ } "
314+ g_seq = get_genexpr (self , seq )
315+ err_msg = err_msg_pattern_genexpr % type (seq ).__name__
316+ with self .subTest (test_name , g_seq = g_seq , err_msg = err_msg ):
317+ with self .assertRaisesRegex (TypeError , err_msg ):
318+ list (g_seq )
319+
320+ test_name = f"{ base_name } _seq_iter_{ type (seq ).__name__ } "
321+ g_iter = get_genexpr (self , iter (seq ))
322+ with self .subTest (test_name , g_iter = g_iter , seq = seq ):
323+ self .assertListEqual (list (g_iter ), list (seq ))
324+
317325 for obj in self .non_sequences :
318- err_msg_genexpr = err_msg_pattern_genexpr % type (obj ).__name__
319- with self .assertRaisesRegex (TypeError , err_msg_genexpr ):
320- list (get_genexpr (self , obj ))
326+ test_name = f"{ base_name } _non_seq_{ type (obj ).__name__ } "
327+ g_obj = get_genexpr (self , obj )
328+ err_msg = err_msg_pattern_genexpr % type (obj ).__name__
329+ with self .subTest (test_name , g_obj = g_obj , err_msg = err_msg ):
330+ with self .assertRaisesRegex (TypeError , err_msg ):
331+ list (g_obj )
321332
322333 def test_modify_genfunc (self ):
323334 def genfunc ():
@@ -335,15 +346,25 @@ def get_genfunc_gi_code(self, new_iter):
335346 err_msg_pattern_fn_call = "'%s' object is not iterable"
336347
337348 for get_genfunc in [get_genfunc_f_locals , get_genfunc_gi_code ]:
349+ base_name = get_genfunc .__name__
338350 for seq in self .sequences :
339- self .assertListEqual (list (get_genfunc (self , seq )),
340- list (seq ))
341- self .assertListEqual (list (get_genfunc (self , iter (seq ))),
342- list (seq ))
351+ test_name = f"{ base_name } _seq_{ type (seq ).__name__ } "
352+ g_seq = get_genfunc (self , seq )
353+ with self .subTest (test_name , g_seq = g_seq , seq = seq ):
354+ self .assertListEqual (list (g_seq ), list (seq ))
355+
356+ test_name = f"{ base_name } _seq_iter_{ type (seq ).__name__ } "
357+ g_iter = get_genfunc (self , iter (seq ))
358+ with self .subTest (test_name , g_iter = g_iter , seq = seq ):
359+ self .assertListEqual (list (g_iter ), list (seq ))
360+
343361 for obj in self .non_sequences :
344- err_msg_fn_call = err_msg_pattern_fn_call % type (obj ).__name__
345- with self .assertRaisesRegex (TypeError , err_msg_fn_call ):
346- list (get_genfunc (self , obj ))
362+ test_name = f"{ base_name } _non_seq_{ type (obj ).__name__ } "
363+ g_obj = get_genfunc (self , obj )
364+ err_msg = err_msg_pattern_fn_call % type (obj ).__name__
365+ with self .subTest (test_name , g_obj = g_obj , err_msg = err_msg ):
366+ with self .assertRaisesRegex (TypeError , err_msg ):
367+ list (g_obj )
347368
348369
349370class ExceptionTest (unittest .TestCase ):
0 commit comments