mirror of
https://github.com/python/cpython.git
synced 2025-07-23 11:15:24 +00:00
[3.13] gh-126742: Avoid checking for library filename in test_ctypes (GH-128034) (#128056)
gh-126742: Avoid checking for library filename in test_ctypes (GH-128034)
Avoid checking for library filename in `dlerror()` error messages of test_ctypes.
(cherry picked from commit 335e24fb0a
)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
This commit is contained in:
parent
f8b4e20137
commit
2ff3e95ad5
1 changed files with 5 additions and 12 deletions
|
@ -133,24 +133,20 @@ class TestLocalization(unittest.TestCase):
|
|||
@classmethod
|
||||
def setUpClass(cls):
|
||||
cls.libc_filename = find_library("c")
|
||||
if cls.libc_filename is None:
|
||||
raise unittest.SkipTest('cannot find libc')
|
||||
|
||||
@configure_locales
|
||||
def test_localized_error_from_dll(self):
|
||||
dll = CDLL(self.libc_filename)
|
||||
with self.assertRaises(AttributeError) as cm:
|
||||
with self.assertRaises(AttributeError):
|
||||
dll.this_name_does_not_exist
|
||||
if sys.platform.startswith('linux'):
|
||||
# On macOS, the filename is not reported by dlerror().
|
||||
self.assertIn(self.libc_filename, str(cm.exception))
|
||||
|
||||
@configure_locales
|
||||
def test_localized_error_in_dll(self):
|
||||
dll = CDLL(self.libc_filename)
|
||||
with self.assertRaises(ValueError) as cm:
|
||||
with self.assertRaises(ValueError):
|
||||
c_int.in_dll(dll, 'this_name_does_not_exist')
|
||||
if sys.platform.startswith('linux'):
|
||||
# On macOS, the filename is not reported by dlerror().
|
||||
self.assertIn(self.libc_filename, str(cm.exception))
|
||||
|
||||
@unittest.skipUnless(hasattr(_ctypes, 'dlopen'),
|
||||
'test requires _ctypes.dlopen()')
|
||||
|
@ -172,11 +168,8 @@ class TestLocalization(unittest.TestCase):
|
|||
@configure_locales
|
||||
def test_localized_error_dlsym(self):
|
||||
dll = _ctypes.dlopen(self.libc_filename)
|
||||
with self.assertRaises(OSError) as cm:
|
||||
with self.assertRaises(OSError):
|
||||
_ctypes.dlsym(dll, 'this_name_does_not_exist')
|
||||
if sys.platform.startswith('linux'):
|
||||
# On macOS, the filename is not reported by dlerror().
|
||||
self.assertIn(self.libc_filename, str(cm.exception))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue