summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormoix <moix@epfl.ch>2010-08-31 06:49:57 +0000
committermoix <moix@epfl.ch>2010-08-31 06:49:57 +0000
commitfaed687d92849859157ea264bcac57b4ec72e9b7 (patch)
treed9ceb5cb0db5c9bd0ccb2e352d374e22ceaa4378 /src
parent8964f6f1bcc8500f1bc6a2808ef70d8852d208ec (diff)
downloadscala-faed687d92849859157ea264bcac57b4ec72e9b7.tar.gz
scala-faed687d92849859157ea264bcac57b4ec72e9b7.tar.bz2
scala-faed687d92849859157ea264bcac57b4ec72e9b7.zip
Partest support for sbt (with failed only and s...
Partest support for sbt (with failed only and specific files only options) Support for triggered execution
Diffstat (limited to 'src')
-rw-r--r--src/partest/scala/tools/partest/nest/CompileManager.scala2
-rw-r--r--src/partest/scala/tools/partest/nest/SBTRunner.scala35
2 files changed, 36 insertions, 1 deletions
diff --git a/src/partest/scala/tools/partest/nest/CompileManager.scala b/src/partest/scala/tools/partest/nest/CompileManager.scala
index 22568ad2d0..ee843cd05b 100644
--- a/src/partest/scala/tools/partest/nest/CompileManager.scala
+++ b/src/partest/scala/tools/partest/nest/CompileManager.scala
@@ -40,7 +40,7 @@ class DirectCompiler(val fileManager: FileManager) extends SimpleCompiler {
def newSettings(out: Option[String]) = {
val settings = new TestSettings(fileManager)
- settings.usejavacp.value = true
+ //settings.usejavacp.value = true
settings.deprecation.value = true
settings.nowarnings.value = false
settings.encoding.value = "ISO-8859-1" // XXX why?
diff --git a/src/partest/scala/tools/partest/nest/SBTRunner.scala b/src/partest/scala/tools/partest/nest/SBTRunner.scala
new file mode 100644
index 0000000000..6a908af1bf
--- /dev/null
+++ b/src/partest/scala/tools/partest/nest/SBTRunner.scala
@@ -0,0 +1,35 @@
+package scala.tools.partest
+package nest
+
+import java.io.File
+import scala.tools.nsc.io.{ Directory }
+
+
+class SBTRunner extends DirectRunner {
+
+ val fileManager = new FileManager {
+ var JAVACMD: String = "java"
+ var JAVAC_CMD: String = "javac"
+ var CLASSPATH: String = _
+ var LATEST_LIB: String = _
+ val testRootPath: String = "test"
+ val testRootDir: Directory = Directory(testRootPath)
+ }
+
+ def reflectiveRunTestsForFiles(kindFiles: Array[File], kind: String):java.util.HashMap[String,Int] = {
+
+ def convert(scalaM:scala.collection.immutable.Map[String,Int]):java.util.HashMap[String,Int] = {
+ val javaM = new java.util.HashMap[String,Int]()
+ for(elem <- scalaM) yield {javaM.put(elem._1,elem._2)}
+ javaM
+ }
+
+ def failedOnlyIfRequired(files:List[File]):List[File]={
+ if (fileManager.failed) files filter (x => fileManager.logFileExists(x, kind)) else files
+ }
+
+ convert(runTestsForFiles(failedOnlyIfRequired(kindFiles.toList), kind))
+
+ }
+}
+