summaryrefslogtreecommitdiff
path: root/core/src/test
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2017-12-14 07:29:33 -0800
committerLi Haoyi <haoyi.sg@gmail.com>2017-12-14 07:43:07 -0800
commitd38196041663959ed71881d6d83a27d4639f3134 (patch)
tree7b8cec4b7b807d2a6697172213974c1babc40335 /core/src/test
parenta97697a3c7294eb6dda30740fc6cdd92a9966ccd (diff)
downloadmill-d38196041663959ed71881d6d83a27d4639f3134.tar.gz
mill-d38196041663959ed71881d6d83a27d4639f3134.tar.bz2
mill-d38196041663959ed71881d6d83a27d4639f3134.zip
Move `Evaluator`s to be long lived, and make tests pass
Diffstat (limited to 'core/src/test')
-rw-r--r--core/src/test/scala/mill/define/ApplicativeTests.scala3
-rw-r--r--core/src/test/scala/mill/eval/FailureTests.scala38
2 files changed, 24 insertions, 17 deletions
diff --git a/core/src/test/scala/mill/define/ApplicativeTests.scala b/core/src/test/scala/mill/define/ApplicativeTests.scala
index 9991b9f0..0dbc91a0 100644
--- a/core/src/test/scala/mill/define/ApplicativeTests.scala
+++ b/core/src/test/scala/mill/define/ApplicativeTests.scala
@@ -44,6 +44,9 @@ object ApplicativeTests extends TestSuite {
def zip[A, B, C, D, E, F, G, H, I](a: O[A], b: O[B], c: O[C], d: O[D], e: O[E], f: O[F], g: O[G], h: O[H], i: O[I]) = {
for(a <- a; b <- b; c <- c; d <- d; e <- e; f <- f; g <- g; h <- h; i <- i) yield (a, b, c, d, e, f, g, h, i)
}
+ def zip[A, B, C, D, E, F, G, H, I, J](a: O[A], b: O[B], c: O[C], d: O[D], e: O[E], f: O[F], g: O[G], h: O[H], i: O[I], j: O[J]) = {
+ for(a <- a; b <- b; c <- c; d <- d; e <- e; f <- f; g <- g; h <- h; i <- i; j <- j) yield (a, b, c, d, e, f, g, h, i, j)
+ }
}
class Counter{
var value = 0
diff --git a/core/src/test/scala/mill/eval/FailureTests.scala b/core/src/test/scala/mill/eval/FailureTests.scala
index 2279d931..4c3b6fca 100644
--- a/core/src/test/scala/mill/eval/FailureTests.scala
+++ b/core/src/test/scala/mill/eval/FailureTests.scala
@@ -11,13 +11,12 @@ object FailureTests extends TestSuite{
def workspace(implicit tp: TestPath) = {
ammonite.ops.pwd / 'target / 'workspace / 'failure / implicitly[TestPath].value
}
- val tests = Tests{
- val graphs = new mill.util.TestGraphs()
- import graphs._
- def check[T: Discovered](base: T)
- (target: T => Target[_], expectedFailCount: Int, expectedRawValues: Seq[Result[_]])
- (implicit tp: TestPath) = {
- val evaluator = new Evaluator(workspace, Discovered.mapping(base), DummyLogger)
+ class Checker[T: Discovered](base: T)(implicit tp: TestPath){
+
+ val evaluator = new Evaluator(workspace, Discovered.mapping(base), DummyLogger)
+
+ def apply(target: T => Target[_], expectedFailCount: Int, expectedRawValues: Seq[Result[_]]) = {
+
val res = evaluator.evaluate(OSet(target(base)))
assert(
res.rawValues == expectedRawValues,
@@ -25,10 +24,15 @@ object FailureTests extends TestSuite{
)
}
+ }
+ val tests = Tests{
+ val graphs = new mill.util.TestGraphs()
+ import graphs._
+
'evaluateSingle - {
ammonite.ops.rm(ammonite.ops.Path(workspace, ammonite.ops.pwd))
-
- check(singleton)(
+ val check = new Checker(singleton)
+ check(
target = _.single,
expectedFailCount = 0,
expectedRawValues = Seq(Result.Success(0))
@@ -36,7 +40,7 @@ object FailureTests extends TestSuite{
singleton.single.failure = Some("lols")
- check(singleton)(
+ check(
target = _.single,
expectedFailCount = 1,
expectedRawValues = Seq(Result.Failure("lols"))
@@ -44,7 +48,7 @@ object FailureTests extends TestSuite{
singleton.single.failure = None
- check(singleton)(
+ check(
target = _.single,
expectedFailCount = 0,
expectedRawValues = Seq(Result.Success(0))
@@ -55,7 +59,7 @@ object FailureTests extends TestSuite{
singleton.single.exception = Some(ex)
- check(singleton)(
+ check(
target = _.single,
expectedFailCount = 1,
expectedRawValues = Seq(Result.Exception(ex))
@@ -63,8 +67,8 @@ object FailureTests extends TestSuite{
}
'evaluatePair - {
ammonite.ops.rm(ammonite.ops.Path(workspace, ammonite.ops.pwd))
-
- check(pair)(
+ val check = new Checker(pair)
+ check(
_.down,
expectedFailCount = 0,
expectedRawValues = Seq(Result.Success(0))
@@ -72,7 +76,7 @@ object FailureTests extends TestSuite{
pair.up.failure = Some("lols")
- check(pair)(
+ check(
_.down,
expectedFailCount = 1,
expectedRawValues = Seq(Result.Skipped)
@@ -80,7 +84,7 @@ object FailureTests extends TestSuite{
pair.up.failure = None
- check(pair)(
+ check(
_.down,
expectedFailCount = 0,
expectedRawValues = Seq(Result.Success(0))
@@ -88,7 +92,7 @@ object FailureTests extends TestSuite{
pair.up.exception = Some(new IndexOutOfBoundsException())
- check(pair)(
+ check(
_.down,
expectedFailCount = 1,
expectedRawValues = Seq(Result.Skipped)