Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions project/PekkoBuild.scala
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,7 @@ object PekkoBuild {
UsefulTask("testQuick *.AnySpec",
"Only run a selected test. When run multiple times will only run previously failing tests (shell mode only)"),
UsefulTask("testQuickUntilPassed", "Runs all tests in a continuous loop until all tests pass"),
UsefulTask("testQuickUntilPassed *.AnySpec", "Only run a selected test in a continuous loop until it passes"),
UsefulTask("publishLocal", "Publish current snapshot version to local ~/.ivy2 repo"),
UsefulTask("verifyCodeStyle", "Verify code style"),
UsefulTask("applyCodeStyle", "Apply code style"),
Expand Down
12 changes: 8 additions & 4 deletions project/TestQuickUntilPassed.scala
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import sbt._
import sbt.Keys._
import sbt.complete.DefaultParsers.spaceDelimited
import sbt.plugins.JvmPlugin

object TestQuickUntilPassed extends AutoPlugin {
Expand All @@ -40,10 +41,13 @@ object TestQuickUntilPassed extends AutoPlugin {
}

override lazy val projectSettings = {
testQuickUntilPassed := {
// TODO Figure out a way to pass input from testQuickUntilPassed into testQuickRecursive
testQuickRecursive("").value
}
testQuickUntilPassed := Def.inputTaskDyn {
val args = spaceDelimited("<args>").parsed
val input =
if (args.nonEmpty) " " + args.mkString(" ")
else ""
testQuickRecursive(input)
}.evaluated
}

}