diff options
Diffstat (limited to 'lib/python2.7/test/test_dl.py')
-rwxr-xr-x | lib/python2.7/test/test_dl.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/lib/python2.7/test/test_dl.py b/lib/python2.7/test/test_dl.py new file mode 100755 index 0000000..6069a77 --- /dev/null +++ b/lib/python2.7/test/test_dl.py @@ -0,0 +1,39 @@ +#! /usr/bin/env python +"""Test dlmodule.c + Roger E. Masse revised strategy by Barry Warsaw +""" +import unittest +from test.test_support import verbose, import_module +dl = import_module('dl', deprecated=True) + +sharedlibs = [ + ('/usr/lib/libc.so', 'getpid'), + ('/lib/libc.so.6', 'getpid'), + ('/usr/bin/cygwin1.dll', 'getpid'), + ('/usr/lib/libc.dylib', 'getpid'), + ] + +def test_main(): + for s, func in sharedlibs: + try: + if verbose: + print 'trying to open:', s, + l = dl.open(s) + except dl.error, err: + if verbose: + print 'failed', repr(str(err)) + pass + else: + if verbose: + print 'succeeded...', + l.call(func) + l.close() + if verbose: + print 'worked!' + break + else: + raise unittest.SkipTest, 'Could not open any shared libraries' + + +if __name__ == '__main__': + test_main() |