swig/Examples/python/import_packages/relativeimport2/runme.py
William S Fulton 604ae7186b Fix for running 'python -m' when using swig -builtin
Same as e05b5ea for -builtin.

Also added runtime tests to check 'python -m'.
2018-12-04 19:12:13 +00:00

30 lines
1.2 KiB
Python

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__)))
print "Testing " + testname + " - %module(package=...) + python 'import' in __init__.py"
if sys.version_info < (2, 5):
print " Skipping test as Python version is < 2.5 and does not support relative import syntax: 'from . import x'"
sys.exit(0)
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)