summaryrefslogtreecommitdiff
path: root/src/partest
diff options
context:
space:
mode:
authorPhilipp Haller <hallerp@gmail.com>2008-08-29 18:39:21 +0000
committerPhilipp Haller <hallerp@gmail.com>2008-08-29 18:39:21 +0000
commit7fec2a08763b790950ce26b4198715d0a1b781d9 (patch)
treee85c28b45b993524fff70753eb4f4eb4d7c3494a /src/partest
parentaf2e9f53fe30f9005157df6070fab2a582fa4769 (diff)
downloadscala-7fec2a08763b790950ce26b4198715d0a1b781d9.tar.gz
scala-7fec2a08763b790950ce26b4198715d0a1b781d9.tar.bz2
scala-7fec2a08763b790950ce26b4198715d0a1b781d9.zip
Enabled test directories also for run, jvm and ...
Enabled test directories also for run, jvm and jvm5 categories. Fixed problem with Java compilation.
Diffstat (limited to 'src/partest')
-rw-r--r--src/partest/scala/tools/partest/nest/ConsoleFileManager.scala3
-rw-r--r--src/partest/scala/tools/partest/nest/ConsoleRunner.scala2
-rw-r--r--src/partest/scala/tools/partest/nest/Worker.scala52
3 files changed, 31 insertions, 26 deletions
diff --git a/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala b/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala
index c8ac780f79..8ddc0e2c47 100644
--- a/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala
+++ b/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala
@@ -231,7 +231,8 @@ else
val filter = new FilenameFilter {
def accept(dir: File, name: String) =
name.endsWith(ending) ||
- (enableDirs && (name != ".svn") && (new File(dir, name)).isDirectory)
+ (enableDirs && (name != ".svn") && (!name.endsWith(".obj")) &&
+ (new File(dir, name)).isDirectory)
}
dir.listFiles(filter).toList
case None =>
diff --git a/src/partest/scala/tools/partest/nest/ConsoleRunner.scala b/src/partest/scala/tools/partest/nest/ConsoleRunner.scala
index af89778a7f..46fbfac122 100644
--- a/src/partest/scala/tools/partest/nest/ConsoleRunner.scala
+++ b/src/partest/scala/tools/partest/nest/ConsoleRunner.scala
@@ -180,7 +180,7 @@ class ConsoleRunner extends DirectRunner with RunnerUtils {
if (check) {
val kindFiles = if (kind == "res") //TODO: is there a nicer way?
fileManager.getFiles(kind, check, Some((".res", false)))
- else if (kind == "pos")
+ else if (kind == "pos" || kind == "jvm")
fileManager.getFiles(kind, check, Some((".scala", true)))
else
fileManager.getFiles(kind, check)
diff --git a/src/partest/scala/tools/partest/nest/Worker.scala b/src/partest/scala/tools/partest/nest/Worker.scala
index c5138a593c..469c56850b 100644
--- a/src/partest/scala/tools/partest/nest/Worker.scala
+++ b/src/partest/scala/tools/partest/nest/Worker.scala
@@ -172,10 +172,6 @@ class Worker(val fileManager: FileManager) extends Actor {
val cmd = "javac"+
" -d "+outDir.getAbsolutePath+
" -classpath "+outDir+File.pathSeparator+CLASSPATH+
- " -Djava.library.path="+output.getParentFile.getAbsolutePath+
- " -Dscalatest.output="+outDir.getAbsolutePath+
- " -Dscalatest.lib="+LATEST_LIB+
- " -Dscalatest.cwd="+outDir.getParent+
" "+files.mkString(" ")
runCommand(cmd, output)
@@ -185,6 +181,7 @@ class Worker(val fileManager: FileManager) extends Actor {
* error out to <code>output</code> file.
*/
def runCommand(command: String, output: File) {
+ NestUI.verbose("running command:\n"+command)
val proc = Runtime.getRuntime.exec(command)
val in = proc.getInputStream
val err = proc.getErrorStream
@@ -347,12 +344,36 @@ class Worker(val fileManager: FileManager) extends Actor {
}
}
+ def compileFilesIn(dir: File, kind: String, logFile: File, outDir: File) {
+ val testFiles = dir.listFiles.toList
+ // 1. compile all '.java' files using javac
+ val javaFiles = testFiles.filter(_.getName.endsWith(".java"))
+ if (!javaFiles.isEmpty)
+ javac(outDir, javaFiles, logFile)
+ // 2. compile all '.scala' files together
+ val scalaFiles = testFiles.filter(_.getName.endsWith(".scala"))
+ if (!compileMgr.shouldCompile(outDir, scalaFiles, kind, logFile)) {
+ NestUI.verbose("compilation of "+scalaFiles+" failed\n")
+ succeeded = false
+ } else
+ // 3. compile each '.scala' file separately
+ scalaFiles foreach { scalaFile =>
+ if (!compileMgr.shouldCompile(outDir, List(scalaFile), kind, logFile)) {
+ NestUI.verbose("compilation of "+scalaFile+" failed\n")
+ succeeded = false
+ }
+ }
+ }
+
def runJvmTest(file: File, kind: String) {
runInContext(file, kind, (logFile: File, outDir: File) => {
- if (!compileMgr.shouldCompile(List(file), kind, logFile)) {
+ if (file.isDirectory) {
+ compileFilesIn(file, kind, logFile, outDir)
+ } else if (!compileMgr.shouldCompile(List(file), kind, logFile)) {
NestUI.verbose("compilation of "+file+" failed\n")
succeeded = false
- } else { // run test
+ }
+ if (succeeded) { // run test
val fileBase = basename(file.getName)
val dir = file.getParentFile
@@ -378,24 +399,7 @@ class Worker(val fileManager: FileManager) extends Actor {
case "pos" => for (file <- files)
runInContext(file, kind, (logFile: File, outDir: File) => {
if (file.isDirectory) {
- val testFiles = file.listFiles.toList
- // 1. compile all '.java' files using javac
- val javaFiles = testFiles.filter(_.getName.endsWith(".java"))
- if (!javaFiles.isEmpty)
- javac(outDir, javaFiles, logFile)
- // 2. compile all '.scala' files together
- val scalaFiles = testFiles.filter(_.getName.endsWith(".scala"))
- if (!compileMgr.shouldCompile(outDir, scalaFiles, kind, logFile)) {
- NestUI.verbose("compilation of "+scalaFiles+" failed\n")
- succeeded = false
- }
- // 3. compile each '.scala' file separately
- scalaFiles foreach { scalaFile =>
- if (!compileMgr.shouldCompile(outDir, List(scalaFile), kind, logFile)) {
- NestUI.verbose("compilation of "+scalaFile+" failed\n")
- succeeded = false
- }
- }
+ compileFilesIn(file, kind, logFile, outDir)
} else if (!compileMgr.shouldCompile(List(file), kind, logFile)) {
NestUI.verbose("compilation of "+file+" failed\n")
succeeded = false