Fix for running 'python -m' when using swig -builtin
Same as e05b5ea for -builtin.
Also added runtime tests to check 'python -m'.
This commit is contained in:
parent
9e83d5d5d9
commit
604ae7186b
17 changed files with 155 additions and 9 deletions
|
|
@ -1,5 +1,6 @@
|
|||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of modules content from within __init__.py
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -12,6 +13,21 @@ if sys.version_info < (2, 5):
|
|||
if sys.version_info < (3, 0):
|
||||
import py2.pkg2
|
||||
print " Finished importing py2.pkg2"
|
||||
commandline = sys.executable + " -m py2.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py2.pkg2.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
else:
|
||||
import py3.pkg2
|
||||
print " Finished importing py3.pkg2"
|
||||
# commandline = sys.executable + " -m py3.pkg2.bar"
|
||||
# subprocess.check_call(commandline, shell=True)
|
||||
# print(" Finished running: " + commandline)
|
||||
# commandline = sys.executable + " -m py3.pkg2.foo"
|
||||
# subprocess.check_call(commandline, shell=True)
|
||||
# print(" Finished running: " + commandline)
|
||||
|
||||
# TODO: Commented out code above results in (from python-3.6 onwards):
|
||||
# RuntimeWarning: 'py3.pkg2.bar' found in sys.modules after import of package 'py3.pkg2', but prior to execution of 'py3.pkg2.bar'; this may result in unpredictable behaviour
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of modules content from within __init__.py
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -12,6 +13,15 @@ if sys.version_info < (2, 5):
|
|||
if sys.version_info < (3, 0):
|
||||
import py2.pkg2
|
||||
print " Finished importing py2.pkg2"
|
||||
commandline = sys.executable + " -m py2.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
else:
|
||||
import py3.pkg2
|
||||
print " Finished importing py3.pkg2"
|
||||
# commandline = sys.executable + " -m py3.pkg2.bar"
|
||||
# subprocess.check_call(commandline, shell=True)
|
||||
# print(" Finished running: " + commandline)
|
||||
|
||||
# TODO: Commented out code above results in (from python-3.6 onwards):
|
||||
# RuntimeWarning: 'py3.pkg2.bar' found in sys.modules after import of package 'py3.pkg2', but prior to execution of 'py3.pkg2.bar'; this may result in unpredictable behaviour
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of modules content from within __init__.py
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -12,6 +13,15 @@ if sys.version_info < (2, 5):
|
|||
if sys.version_info < (3, 0):
|
||||
import py2.pkg2
|
||||
print " Finished importing py2.pkg2"
|
||||
commandline = sys.executable + " -m py2.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
else:
|
||||
import py3.pkg2
|
||||
print " Finished importing py3.pkg2"
|
||||
# commandline = sys.executable + " -m py3.pkg2.bar"
|
||||
# subprocess.check_call(commandline, shell=True)
|
||||
# print(" Finished running: " + commandline)
|
||||
|
||||
# TODO: Commented out code above results in (from python-3.6 onwards):
|
||||
# RuntimeWarning: 'py3.pkg2.bar' found in sys.modules after import of package 'py3.pkg2', but prior to execution of 'py3.pkg2.bar'; this may result in unpredictable behaviour
|
||||
|
|
|
|||
|
|
@ -1,6 +1,17 @@
|
|||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
print(" Starting subtest " + os.path.basename(__file__))
|
||||
|
||||
# import robin as a module in the global namespace
|
||||
|
||||
import robin
|
||||
print(" Finished importing robin")
|
||||
|
||||
if not(robin.run() == "AWAY!"):
|
||||
raise RuntimeError("test failed")
|
||||
|
||||
commandline = sys.executable + " -m robin"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,18 @@
|
|||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
print(" Starting subtest " + os.path.basename(__file__))
|
||||
|
||||
# Package brave found under one path
|
||||
sys.path.insert(0, 'path1')
|
||||
|
||||
from brave import robin
|
||||
print(" Finished from brave import robin")
|
||||
|
||||
if not(robin.run() == "AWAY!"):
|
||||
raise RuntimeError("test failed")
|
||||
|
||||
commandline = sys.executable + " -m brave.robin"
|
||||
subprocess.check_call(commandline, shell=True, env = {"PYTHONPATH": "path1"})
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,8 @@
|
|||
# These examples rely on namespace packages. Don't
|
||||
# run them for old python interpreters.
|
||||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
print "Testing " + testname + " - namespace packages"
|
||||
|
|
|
|||
|
|
@ -1,10 +1,20 @@
|
|||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
print(" Starting subtest " + os.path.basename(__file__))
|
||||
|
||||
# Package brave split into two paths.
|
||||
# path2/brave/robin.py and path3/brave/_robin.so
|
||||
sys.path.insert(0, 'path2')
|
||||
sys.path.insert(0, 'path3')
|
||||
|
||||
from brave import robin
|
||||
print(" Finished from brave import robin")
|
||||
|
||||
if not(robin.run() == "AWAY!"):
|
||||
raise RuntimeError("test failed")
|
||||
|
||||
commandline = sys.executable + " -m brave.robin"
|
||||
subprocess.check_call(commandline, shell=True, env = {"PYTHONPATH": "path2:path3"})
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,10 +1,20 @@
|
|||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
print(" Starting subtest " + os.path.basename(__file__))
|
||||
|
||||
# Package brave split into two paths.
|
||||
# brave/robin.py (in path4.zip) and path3/brave/_robin.so
|
||||
sys.path.insert(0, 'path4.zip')
|
||||
sys.path.insert(0, 'path3')
|
||||
|
||||
from brave import robin
|
||||
print(" Finished from brave import robin")
|
||||
|
||||
if not(robin.run() == "AWAY!"):
|
||||
raise RuntimeError("test failed")
|
||||
|
||||
commandline = sys.executable + " -m brave.robin"
|
||||
subprocess.check_call(commandline, shell=True, env = {"PYTHONPATH": "path3:path4.zip"})
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of modules content from within __init__.py
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -12,6 +13,18 @@ if sys.version_info < (2, 5):
|
|||
if sys.version_info < (3, 0):
|
||||
import py2.pkg2.bar
|
||||
print " Finished importing py2.pkg2.bar"
|
||||
commandline = sys.executable + " -m py2.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py2.pkg2.pkg3.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
else:
|
||||
import py3.pkg2.bar
|
||||
print " Finished importing py3.pkg2.bar"
|
||||
commandline = sys.executable + " -m py3.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py3.pkg2.pkg3.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of modules content from within __init__.py
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -12,6 +13,18 @@ if sys.version_info < (2, 5):
|
|||
if sys.version_info < (3, 0):
|
||||
import py2.pkg2.bar
|
||||
print " Finished importing py2.pkg2.bar"
|
||||
commandline = sys.executable + " -m py2.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py2.pkg2.pkg3.pkg4.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
else:
|
||||
import py3.pkg2.bar
|
||||
print " Finished importing py3.pkg2.bar"
|
||||
commandline = sys.executable + " -m py3.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py3.pkg2.pkg3.pkg4.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import sys
|
||||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of modules content from within __init__.py
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -12,6 +13,18 @@ if sys.version_info < (2, 5):
|
|||
if sys.version_info < (3, 0):
|
||||
import py2.pkg2.bar
|
||||
print " Finished importing py2.pkg2.bar"
|
||||
commandline = sys.executable + " -m py2.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py2.pkg2.pkg3.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
else:
|
||||
import py3.pkg2.bar
|
||||
print " Finished importing py3.pkg2.bar"
|
||||
commandline = sys.executable + " -m py3.pkg2.bar"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
commandline = sys.executable + " -m py3.pkg2.pkg3.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
# Test import of same modules from different packages
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
|
@ -13,3 +15,7 @@ classname = str(type(var2))
|
|||
if classname.find("pkg2.foo.Pkg2_Foo") == -1:
|
||||
raise RuntimeError("failed type checking: " + classname)
|
||||
print " Successfully created object pkg2.foo.Pkg2_Foo"
|
||||
|
||||
commandline = sys.executable + " -m pkg2.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
print "Testing " + testname + " - %module(package=...) + python 'import' in __init__.py"
|
||||
|
|
@ -12,3 +14,7 @@ classname = str(type(var2))
|
|||
if classname.find("pkg1.pkg2.foo.Pkg2_Foo") == -1:
|
||||
raise RuntimeError("failed type checking: " + classname)
|
||||
print " Successfully created object pkg1.pkg2.foo.Pkg2_Foo"
|
||||
|
||||
commandline = sys.executable + " -m pkg1.pkg2.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
print "Testing " + testname + " - split modules"
|
||||
|
|
@ -9,3 +11,7 @@ print " Finished importing pkg1.foo"
|
|||
|
||||
if not(pkg1.foo.count() == 3):
|
||||
raise RuntimeError("test failed")
|
||||
|
||||
commandline = sys.executable + " -m pkg1.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
import os.path
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
testname = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
||||
print "Testing " + testname + " - split modules"
|
||||
|
|
@ -9,3 +11,7 @@ print " Finished importing pkg1.foo"
|
|||
|
||||
if not(pkg1.foo.count() == 3):
|
||||
raise RuntimeError("test failed")
|
||||
|
||||
commandline = sys.executable + " -m pkg1.foo"
|
||||
subprocess.check_call(commandline, shell=True)
|
||||
print(" Finished running: " + commandline)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue