X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fscala%2FSbtTapReporting.scala;h=e828c2d6b977a360c0f53c6ff52c09612d3c5f5a;hb=d0f6bd91eb895fc9ab956e85d362fa7eed858b33;hp=0d7f26b3a69eb32674b09790fe7c8e95942dd2db;hpb=8fee6b74800ae2b7c07915e5ea7f9058e2df33d1;p=chaz%2Fsbt-tap diff --git a/src/main/scala/SbtTapReporting.scala b/src/main/scala/SbtTapReporting.scala index 0d7f26b..e828c2d 100644 --- a/src/main/scala/SbtTapReporting.scala +++ b/src/main/scala/SbtTapReporting.scala @@ -5,7 +5,7 @@ import org.scalatools.testing.{Event => TEvent, Result => TResult} import java.util.concurrent.atomic.AtomicInteger object SbtTapReporting extends Plugin { - lazy val tapListener = new SbtTapListener + def apply() = new SbtTapListener } /** @@ -23,7 +23,9 @@ class SbtTapListener extends TestsListener { override def doInit { new File("test-results").mkdirs() - fileWriter = new FileWriter("test-results/test.tap") + fileWriter = new FileWriter( + scala.util.Properties.envOrElse("SBT_TAP_OUTPUT", "test-results/test.tap") + ) } def startGroup(name: String) {} @@ -50,7 +52,10 @@ class SbtTapListener extends TestsListener { fileWriter.close() } - private def writeTapFields(s: Any*) { fileWriter.write(s.mkString("", " ", "\n")) } + private def writeTapFields(s: Any*) { + fileWriter.write(s.mkString("", " ", "\n")) + fileWriter.flush() + } private def stackTraceForError(t: Throwable): String = { val sw = new StringWriter()