• Victor Stinner's avatar
    Issue #29507: Update test_exceptions · 331bbe6a
    Victor Stinner yazdı
    test_unraisable() of test_exceptions expects that PyErr_WriteUnraisable(method)
    fails on repr(method).
    
    Before the previous change (7b8df4a5d81d), slot_tp_finalize() called
    PyErr_WriteUnraisable() with a PyMethodObject. In this case, repr(method) calls
    repr(self) which is BrokenRepr.__repr__() and the calls raises a new exception.
    
    After the previous change, slot_tp_finalize() uses an unbound method: repr() is
    called on a regular __del__() method which doesn't call repr(self). repr()
    doesn't fail anymore.
    
    PyErr_WriteUnraisable() doesn't call __repr__() anymore, so remove BrokenRepr
    unit test.
    331bbe6a
test_exceptions.py 39.7 KB