summaryrefslogtreecommitdiff
path: root/src/python/stdlib/test/test_dl.py
diff options
context:
space:
mode:
authorSimon <simon@hardwired.org.uk>2011-03-22 17:58:52 (GMT)
committer Simon <simon@hardwired.org.uk>2011-03-22 17:58:52 (GMT)
commit2e401babb793238564ca640fc802a52ab7f6c293 (patch)
tree87a9b471e82604e76f96d556f5771322fb31818a /src/python/stdlib/test/test_dl.py
parentc096b2b14a200a0cc0a08cfea839c9e7f4edf22e (diff)
parent04a9cbcb8855e64db660a8c6e23d79114b4afd83 (diff)
downloadpowder-2e401babb793238564ca640fc802a52ab7f6c293.zip
powder-2e401babb793238564ca640fc802a52ab7f6c293.tar.gz
Python console
Diffstat (limited to 'src/python/stdlib/test/test_dl.py')
-rwxr-xr-xsrc/python/stdlib/test/test_dl.py39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/python/stdlib/test/test_dl.py b/src/python/stdlib/test/test_dl.py
new file mode 100755
index 0000000..6069a77
--- /dev/null
+++ b/src/python/stdlib/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()