summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_import.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_import.py')
-rw-r--r--Lib/test/test_import.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/Lib/test/test_import.py b/Lib/test/test_import.py
new file mode 100644
index 0000000..c7ab753
--- /dev/null
+++ b/Lib/test/test_import.py
@@ -0,0 +1,44 @@
+from test_support import TESTFN
+
+import os
+import random
+
+source = TESTFN + ".py"
+pyc = TESTFN + ".pyc"
+pyo = TESTFN + ".pyo"
+
+f = open(source, "w")
+print >> f, "# This will test Python's ability to import a .py file"
+a = random.randrange(1000)
+b = random.randrange(1000)
+print >> f, "a =", a
+print >> f, "b =", b
+f.close()
+
+try:
+ try:
+ mod = __import__(TESTFN)
+ except ImportError, err:
+ raise ValueError, "import from .py failed: %s" % err
+
+ if mod.a != a or mod.b != b:
+ print a, "!=", mod.a
+ print b, "!=", mod.b
+ raise ValueError, "module loaded (%s) but contents invalid" % mod
+finally:
+ os.unlink(source)
+
+try:
+ try:
+ reload(mod)
+ except ImportError, err:
+ raise ValueError, "import from .pyc/.pyo failed: %s" % err
+finally:
+ try:
+ os.unlink(pyc)
+ except os.error:
+ pass
+ try:
+ os.unlink(pyo)
+ except os.error:
+ pass