diff options
author | Som Snytt <som.snytt@gmail.com> | 2012-08-30 15:17:58 -0700 |
---|---|---|
committer | Som Snytt <som.snytt@gmail.com> | 2012-08-31 11:13:28 -0700 |
commit | 656a1c47c4fb2648a10296263133aa73e91061c9 (patch) | |
tree | 73fe0c2fa7b3c43c5145e2811d4449df3204c32f /src/partest | |
parent | c5d1cf09158e1e3c3b9821c6414406649a9d2f82 (diff) | |
download | scala-656a1c47c4fb2648a10296263133aa73e91061c9.tar.gz scala-656a1c47c4fb2648a10296263133aa73e91061c9.tar.bz2 scala-656a1c47c4fb2648a10296263133aa73e91061c9.zip |
On --grep, partest must dir.list to descend into subdirs (fixes SI-6296)
In addition, always use UTF-8 when reading test files (and not default),
since some tests exercise UTF-8.
Also, quote "$JAVACMD" and convert it (and $JAVA_HOME) for cygwin, where
$JAVACMD is likely to include a space.
Diffstat (limited to 'src/partest')
-rw-r--r-- | src/partest/scala/tools/partest/nest/ConsoleRunner.scala | 7 | ||||
-rw-r--r-- | src/partest/scala/tools/partest/package.scala | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/partest/scala/tools/partest/nest/ConsoleRunner.scala b/src/partest/scala/tools/partest/nest/ConsoleRunner.scala index ccc756c158..84d9832f97 100644 --- a/src/partest/scala/tools/partest/nest/ConsoleRunner.scala +++ b/src/partest/scala/tools/partest/nest/ConsoleRunner.scala @@ -70,10 +70,11 @@ class ConsoleRunner extends DirectRunner { // true if a test path matches the --grep expression. private def pathMatchesExpr(path: Path, expr: String) = { def pred(p: Path) = file2String(p.toFile) contains expr - def srcs = path.toDirectory.deepList() filter (_.hasExtension("scala", "java")) + def greppable(f: Path) = f.isFile && (f hasExtension ("scala", "java")) + def any(d: Path) = d.toDirectory.deepList() exists (f => greppable(f) && pred(f)) (path.isFile && pred(path)) || - (path.isDirectory && srcs.exists(pred)) || + (path.isDirectory && any(path)) || (pred(path changeExtension "check")) } @@ -121,7 +122,7 @@ class ConsoleRunner extends DirectRunner { val grepOption = parsed get "--grep" val grepPaths = grepOption.toList flatMap { expr => val subjectDirs = testSetKinds map (srcDir / _ toDirectory) - val testPaths = subjectDirs flatMap (_.files filter stdFilter) + val testPaths = subjectDirs flatMap (_.list filter stdFilter) val paths = testPaths filter (p => pathMatchesExpr(p, expr)) if (paths.isEmpty) diff --git a/src/partest/scala/tools/partest/package.scala b/src/partest/scala/tools/partest/package.scala index 08934ef143..09eb4b66f1 100644 --- a/src/partest/scala/tools/partest/package.scala +++ b/src/partest/scala/tools/partest/package.scala @@ -45,7 +45,7 @@ package object partest { def path2String(path: String) = file2String(new JFile(path)) def file2String(f: JFile) = - try SFile(f).slurp() + try SFile(f).slurp(scala.io.Codec.UTF8) catch { case _: FileNotFoundException => "" } def basename(name: String): String = Path(name).stripExtension |