summaryrefslogtreecommitdiff
path: root/coverage/execfile.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2009-04-03 23:32:19 -0400
committerNed Batchelder <ned@nedbatchelder.com>2009-04-03 23:32:19 -0400
commita56bfefc8d9dac39be06037f2fc074d048b522bc (patch)
treed1423b45a514ac4d71f06a693bcc1e54c70a02c3 /coverage/execfile.py
parent4910434d33d0928374bf966c00c07feda5b32d77 (diff)
downloadpython-coveragepy-git-a56bfefc8d9dac39be06037f2fc074d048b522bc.tar.gz
Factor execfile out of cmdline, so that we can call python main programs properly: now they get the correct value for __file__.
Diffstat (limited to 'coverage/execfile.py')
-rw-r--r--coverage/execfile.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/coverage/execfile.py b/coverage/execfile.py
new file mode 100644
index 00000000..bcf5bf4f
--- /dev/null
+++ b/coverage/execfile.py
@@ -0,0 +1,11 @@
+"""Execute files of Python code."""
+
+import os, sys
+
+def run_python_file(filename):
+ mod_globals = {
+ '__name__': '__main__',
+ '__file__': filename,
+ }
+ sys.path[0] = os.path.dirname(filename)
+ execfile(filename, mod_globals)