aboutsummaryrefslogblamecommitdiff
path: root/test/dotty/partest/DPConfig.scala
blob: 640dfd0213c3a2e693a64f1f1cf988d88dbbade6 (plain) (tree)
1
2
3
4
5

                     
                                         

                            











                                                                             


                                                                                 


                                                                                                             
                     







                                                                         
package dotty.partest

import scala.collection.JavaConversions._
import scala.reflect.io.Path
import java.io.File


/** Dotty Partest runs all tests in the provided testDirs located under
  * testRoot. There can be several directories with pos resp. neg tests, as
  * long as the prefix is pos/neg.
  *
  * Each testDir can also have a __defaultFlags.flags file, which provides
  * compiler flags and is used unless there's a specific flags file (e.g. for
  * test pos/A.scala, if there's a pos/A.flags file those flags are used,
  * otherwise pos/__defaultFlags.flags are used if the file exists).
  */
object DPConfig {
  val testRoot = (Path(".") / Path("tests") / Path("partest-generated")).toString
  val genLog = Path(testRoot) / Path("gen.log")

  lazy val testDirs = {
    val root = new File(testRoot)
    val dirs = if (!root.exists) Array.empty[String] else root.listFiles.filter(_.isDirectory).map(_.getName)
    if (dirs.isEmpty)
      throw new Exception("Partest did not detect any generated sources")
    dirs
  }

  // Tests finish faster when running in parallel, but console output is
  // out of order and sometimes the compiler crashes
  val runTestsInParallel = false
}