aboutsummaryrefslogtreecommitdiff
path: root/Examples/python/import_packages/relativeimport1/runme.py
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/python/import_packages/relativeimport1/runme.py')
-rw-r--r--Examples/python/import_packages/relativeimport1/runme.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/Examples/python/import_packages/relativeimport1/runme.py b/Examples/python/import_packages/relativeimport1/runme.py
index 997476b1d..87101ea46 100644
--- a/Examples/python/import_packages/relativeimport1/runme.py
+++ b/Examples/python/import_packages/relativeimport1/runme.py
@@ -1,13 +1,32 @@
-import sys
import os.path
+import subprocess
+import sys
+
+def run_except_on_windows(commandline, env=None):
+ if os.name != "nt" and sys.platform != "cygwin":
+ # Strange failures on windows/cygin/mingw
+ subprocess.check_call(commandline, env=env, shell=True)
+ print(" Finished running: " + commandline)
# 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=...) with -relativeimport"
+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"
+ run_except_on_windows(commandline)
+ commandline = sys.executable + " -m py2.pkg2.pkg3.foo"
+ run_except_on_windows(commandline)
else:
import py3.pkg2.bar
print " Finished importing py3.pkg2.bar"
+ commandline = sys.executable + " -m py3.pkg2.bar"
+ run_except_on_windows(commandline)
+ commandline = sys.executable + " -m py3.pkg2.pkg3.foo"
+ run_except_on_windows(commandline)