summaryrefslogtreecommitdiff
path: root/scripts/TestUtil.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/TestUtil.py')
-rwxr-xr-xscripts/TestUtil.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/scripts/TestUtil.py b/scripts/TestUtil.py
index 42d4b2d595f..a7cf3b1e46f 100755
--- a/scripts/TestUtil.py
+++ b/scripts/TestUtil.py
@@ -1195,11 +1195,22 @@ def getMirrorDir(base, mapping):
current = os.path.basename(before)
before = os.path.dirname(before)
if current == lang:
+ # Deal with Java's different directory structure
+ if lang == "java":
+ while len(before) > 0:
+ current = os.path.basename(before)
+ before = os.path.dirname(before)
+ if current == lang:
+ break
break
after.insert(0, current)
else:
raise RuntimeError("cannot find language dir")
- return os.path.join(before, mapping, *after)
+ dir = os.path.join(before, mapping)
+ # Deal with Java's different directory structure
+ if mapping == "java":
+ dir = os.path.join(dir, "test", "src", "main", "java")
+ return os.path.join(dir, *after)
def getMappingDir(base, mapping, dirnames):
"""Get the directory for the given mapping."""
@@ -1899,7 +1910,12 @@ def runTests(start, expanded, num = 0, script = False):
if index < start:
continue
i = os.path.normpath(i)
- dir = os.path.join(toplevel, i)
+
+ # Deal with Java's different directory structure
+ if i.find(os.path.join("java","test")) != -1:
+ dir = os.path.join(toplevel, "java", "test", "src", "main", i)
+ else:
+ dir = os.path.join(toplevel, i)
sys.stdout.write("\n")
if num > 0: