summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/configs/learning-gem5-p1-simple.py7
-rw-r--r--tests/configs/learning-gem5-p1-two-level.py8
-rw-r--r--tests/configs/memcheck.py7
-rw-r--r--tests/run.py4
4 files changed, 23 insertions, 3 deletions
diff --git a/tests/configs/learning-gem5-p1-simple.py b/tests/configs/learning-gem5-p1-simple.py
index 850abccf1..9ad70854e 100644
--- a/tests/configs/learning-gem5-p1-simple.py
+++ b/tests/configs/learning-gem5-p1-simple.py
@@ -35,5 +35,10 @@ root = None
def run_test(root):
# Called from tests/run.py
+ # Set the working directory in case we are executing from
+ # outside gem5's source tree
+ import os
+ os.chdir(os.path.join(os.path.dirname(__file__), "../"))
+
# Execute the script we are wrapping
- execfile('configs/learning_gem5/part1/simple.py')
+ execfile(srcpath('configs/learning_gem5/part1/simple.py'))
diff --git a/tests/configs/learning-gem5-p1-two-level.py b/tests/configs/learning-gem5-p1-two-level.py
index 1a1f8a0b9..8101de318 100644
--- a/tests/configs/learning-gem5-p1-two-level.py
+++ b/tests/configs/learning-gem5-p1-two-level.py
@@ -37,6 +37,12 @@ import m5
def run_test(root):
# Called from tests/run.py
+
+ # Set the working directory in case we are executing from
+ # outside gem5's source tree
+ import os
+ os.chdir(os.path.join(os.path.dirname(__file__), "../"))
+
# Add paths that we need
m5.util.addToPath('../configs/learning_gem5/part1')
m5.util.addToPath('../configs/common')
@@ -49,4 +55,4 @@ def run_test(root):
# For instance, sys.argv.append('--l2_size=512kB')
# Execute the script we are wrapping
- execfile('configs/learning_gem5/part1/two_level.py')
+ execfile(srcpath('configs/learning_gem5/part1/two_level.py'))
diff --git a/tests/configs/memcheck.py b/tests/configs/memcheck.py
index 52931a0b3..21c8d7d4c 100644
--- a/tests/configs/memcheck.py
+++ b/tests/configs/memcheck.py
@@ -47,6 +47,11 @@ root = None
def run_test(root):
# Called from tests/run.py
+ # Set the working directory in case we are executing from
+ # outside gem5's source tree
+ import os
+ os.chdir(os.path.join(os.path.dirname(__file__), "../"))
+
# The path to this script is the only parameter. Delete it so
# we can execute the script that we want to execute.
import sys
@@ -56,4 +61,4 @@ def run_test(root):
sys.argv.append('-m %d' % maxtick)
# Execute the script we are wrapping
- execfile('configs/example/memcheck.py', globals())
+ execfile(srcpath('configs/example/memcheck.py'), globals())
diff --git a/tests/run.py b/tests/run.py
index 461813559..ff5be230d 100644
--- a/tests/run.py
+++ b/tests/run.py
@@ -171,6 +171,10 @@ def inputpath(app, file=None):
file = app
return joinpath(test_progs, app, 'input', file)
+def srcpath(path):
+ """Path to file in gem5's source tree"""
+ return joinpath(os.path.dirname(__file__), "..", path)
+
# build configuration
sys.path.append(joinpath(tests_root, 'configs'))
test_filename = config