Staging
v0.8.1
https://github.com/python/cpython
Revision ca079a3ea30098aff3197c559a0e32d42dda6d84 authored by Benjamin Peterson on 29 April 2018, 22:47:33 UTC, committed by Benjamin Peterson on 29 April 2018, 22:47:33 UTC
1 parent 4c86fc0
Raw File
Tip revision: ca079a3ea30098aff3197c559a0e32d42dda6d84 authored by Benjamin Peterson on 29 April 2018, 22:47:33 UTC
bump to 2.7.15
Tip revision: ca079a3
test_dl.py
"""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()
back to top