gh-105873: Make `_xxsubinterpreters` use exception type name in shared exception (#105874)

This commit is contained in:
Radislav Chugunov 2023-07-08 11:44:50 +03:00 committed by GitHub
parent 2ef1dc37f0
commit 69a39bd9ad
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 4 additions and 4 deletions

View File

@ -731,10 +731,10 @@ class RunStringTests(TestBase):
yield
if msg is None:
self.assertEqual(str(caught.exception).split(':')[0],
str(exctype))
exctype.__name__)
else:
self.assertEqual(str(caught.exception),
"{}: {}".format(exctype, msg))
"{}: {}".format(exctype.__name__, msg))
def test_invalid_syntax(self):
with self.assert_run_failed(SyntaxError):

View File

@ -655,7 +655,7 @@ class MagicNumberTests(unittest.TestCase):
@unittest.skipIf(_interpreters is None, 'subinterpreters required')
class IncompatibleExtensionModuleRestrictionsTests(unittest.TestCase):
ERROR = re.compile("^<class 'ImportError'>: module (.*) does not support loading in subinterpreters")
ERROR = re.compile("^ImportError: module (.*) does not support loading in subinterpreters")
def run_with_own_gil(self, script):
interpid = _interpreters.create(isolated=True)

View File

@ -273,7 +273,7 @@ _sharedexception_bind(PyObject *exc, _sharedexception *sharedexc)
assert(exc != NULL);
const char *failure = NULL;
PyObject *nameobj = PyUnicode_FromFormat("%S", Py_TYPE(exc));
PyObject *nameobj = PyUnicode_FromString(Py_TYPE(exc)->tp_name);
if (nameobj == NULL) {
failure = "unable to format exception type name";
goto error;