diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2017-12-14 07:29:33 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2017-12-14 07:43:07 -0800 |
commit | d38196041663959ed71881d6d83a27d4639f3134 (patch) | |
tree | 7b8cec4b7b807d2a6697172213974c1babc40335 /core/src/test | |
parent | a97697a3c7294eb6dda30740fc6cdd92a9966ccd (diff) | |
download | mill-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.scala | 3 | ||||
-rw-r--r-- | core/src/test/scala/mill/eval/FailureTests.scala | 38 |
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) |