@@ -116,8 +116,7 @@ def test_no_FatalError_infinite_loop(self):
116116                   "after Python initialization and before Python finalization, " 
117117                   "but it was called without an active thread state. " 
118118                   "Are you trying to call the C API inside of a Py_BEGIN_ALLOW_THREADS block?" ).encode ()
119-         self .assertTrue (err .rstrip ().startswith (msg ),
120-                         err )
119+         self .assertStartsWith (err .rstrip (), msg )
121120
122121    def  test_memoryview_from_NULL_pointer (self ):
123122        self .assertRaises (ValueError , _testcapi .make_memoryview_from_NULL_pointer )
@@ -720,7 +719,7 @@ def test_heaptype_with_setattro(self):
720719
721720    def  test_heaptype_with_custom_metaclass (self ):
722721        metaclass  =  _testcapi .HeapCTypeMetaclass 
723-         self .assertTrue ( issubclass ( metaclass , type ) )
722+         self .assertIsSubclass ( metaclass , type )
724723
725724        # Class creation from C 
726725        t  =  _testcapi .pytype_fromspec_meta (metaclass )
@@ -736,7 +735,7 @@ def test_heaptype_with_custom_metaclass(self):
736735    def  test_heaptype_with_custom_metaclass_null_new (self ):
737736        metaclass  =  _testcapi .HeapCTypeMetaclassNullNew 
738737
739-         self .assertTrue ( issubclass ( metaclass , type ) )
738+         self .assertIsSubclass ( metaclass , type )
740739
741740        # Class creation from C 
742741        t  =  _testcapi .pytype_fromspec_meta (metaclass )
@@ -751,7 +750,7 @@ def test_heaptype_with_custom_metaclass_null_new(self):
751750    def  test_heaptype_with_custom_metaclass_custom_new (self ):
752751        metaclass  =  _testcapi .HeapCTypeMetaclassCustomNew 
753752
754-         self .assertTrue ( issubclass ( _testcapi .HeapCTypeMetaclassCustomNew , type ) )
753+         self .assertIsSubclass ( _testcapi .HeapCTypeMetaclassCustomNew , type )
755754
756755        msg  =  "Metaclasses with custom tp_new are not supported." 
757756        with  self .assertRaisesRegex (TypeError , msg ):
@@ -910,8 +909,7 @@ def test_export_symbols(self):
910909            names .append ('Py_FrozenMain' )
911910
912911        for  name  in  names :
913-             with  self .subTest (name = name ):
914-                 self .assertTrue (hasattr (ctypes .pythonapi , name ))
912+             self .assertHasAttr (ctypes .pythonapi , name )
915913
916914    def  test_clear_managed_dict (self ):
917915
@@ -1503,7 +1501,8 @@ def inner(arg5, arg6):
15031501        self .assertIsInstance (closure , tuple )
15041502        self .assertEqual (len (closure ), 1 )
15051503        self .assertEqual (len (closure ), len (func .__code__ .co_freevars ))
1506-         self .assertTrue (all (isinstance (cell , CellType ) for  cell  in  closure ))
1504+         for  cell  in  closure :
1505+             self .assertIsInstance (cell , CellType )
15071506        self .assertTrue (closure [0 ].cell_contents , 5 )
15081507
15091508        func  =  with_two_levels (1 , 2 )(3 , 4 )
@@ -1512,7 +1511,8 @@ def inner(arg5, arg6):
15121511        self .assertIsInstance (closure , tuple )
15131512        self .assertEqual (len (closure ), 4 )
15141513        self .assertEqual (len (closure ), len (func .__code__ .co_freevars ))
1515-         self .assertTrue (all (isinstance (cell , CellType ) for  cell  in  closure ))
1514+         for  cell  in  closure :
1515+             self .assertIsInstance (cell , CellType )
15161516        self .assertEqual ([cell .cell_contents  for  cell  in  closure ],
15171517                         [1 , 2 , 3 , 4 ])
15181518
@@ -2365,7 +2365,7 @@ def test_mutate_exception(self):
23652365
23662366        support .run_in_subinterp ("import binascii; binascii.Error.foobar = 'foobar'" )
23672367
2368-         self .assertFalse ( hasattr ( binascii .Error , "foobar" ) )
2368+         self .assertNotHasAttr ( binascii .Error , "foobar" )
23692369
23702370    @unittest .skipIf (_testmultiphase  is  None , "test requires _testmultiphase module" ) 
23712371    # gh-117649: The free-threaded build does not currently support sharing 
0 commit comments