diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2018-01-08 01:19:21 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2018-01-08 01:25:41 -0800 |
commit | 51e565c519aedc5dc8494a44cc74c750f6a6e9cf (patch) | |
tree | 5a1e7ed7e8e51cfbbed186141699088a49f0de3e /core/src/test/scala | |
parent | d037fcb99dfc94691783094d811cb60f2241aebb (diff) | |
download | mill-51e565c519aedc5dc8494a44cc74c750f6a6e9cf.tar.gz mill-51e565c519aedc5dc8494a44cc74c750f6a6e9cf.tar.bz2 mill-51e565c519aedc5dc8494a44cc74c750f6a6e9cf.zip |
Simplify `Evaluator.Mapping` and consolidate logic within the `Segments` data-type
Diffstat (limited to 'core/src/test/scala')
7 files changed, 31 insertions, 28 deletions
diff --git a/core/src/test/scala/mill/discover/ConsistencyTests.scala b/core/src/test/scala/mill/discover/ConsistencyTests.scala index 47eb14ce..190b2cee 100644 --- a/core/src/test/scala/mill/discover/ConsistencyTests.scala +++ b/core/src/test/scala/mill/discover/ConsistencyTests.scala @@ -2,7 +2,8 @@ package mill.discover import mill.define.Segment.Label -import mill.util.TestGraphs +import mill.define.Segments +import mill.util.{OSet, TestGraphs} import utest._ object ConsistencyTests extends TestSuite{ @@ -16,11 +17,11 @@ object ConsistencyTests extends TestSuite{ // // Maybe later we can convert them into compile errors somehow - val expected = List( - List(Label("down")), - List(Label("right")), - List(Label("left")), - List(Label("up")) + val expected = OSet( + Segments(Label("down")), + Segments(Label("right")), + Segments(Label("left")), + Segments(Label("up")) ) 'diamond - { @@ -28,14 +29,15 @@ object ConsistencyTests extends TestSuite{ Discovered.mapping(diamond) ) - assert(inconsistent == Nil) + assert(inconsistent == OSet()) } + 'anonDiamond - { val inconsistent = Discovered.consistencyCheck( Discovered.mapping(anonDiamond) ) - assert(inconsistent == Nil) + assert(inconsistent == OSet()) } 'borkedCachedDiamond2 - { diff --git a/core/src/test/scala/mill/discover/CrossModuleTests.scala b/core/src/test/scala/mill/discover/CrossModuleTests.scala index 9848b9f4..04c41848 100644 --- a/core/src/test/scala/mill/discover/CrossModuleTests.scala +++ b/core/src/test/scala/mill/discover/CrossModuleTests.scala @@ -75,14 +75,14 @@ object CrossTests extends TestSuite{ val discovered = Discovered.mapping(singleCross) - val segments = discovered.targetsToSegments.values.toSet + val segments = discovered.targets.map(_.ctx.segments.value).toSet val expectedSegments = Set( List(Label("cross"), Segment.Cross(List("210")), Label("suffix")), List(Label("cross"), Segment.Cross(List("211")), Label("suffix")), List(Label("cross"), Segment.Cross(List("212")), Label("suffix")) ) assert(segments == expectedSegments) - val targets = discovered.targetsToSegments.keys.toSet + val targets = discovered.targets.toSet val expected = Set( singleCross.cross("210").suffix, singleCross.cross("211").suffix, @@ -93,7 +93,7 @@ object CrossTests extends TestSuite{ 'doubleCrossTargetDiscovery - { val discovered = Discovered.mapping(doubleCross) - val targets = discovered.targetsToSegments.keys.toSet + val targets = discovered.targets.toSet val expected = Set( doubleCross.cross("jvm", "210").suffix, @@ -108,7 +108,7 @@ object CrossTests extends TestSuite{ } 'nestedCrosses - { - val discovered = Discovered.mapping(nestedCrosses).targetsToSegments + val discovered = Discovered.mapping(nestedCrosses).targets assert(discovered.size == 9) } } diff --git a/core/src/test/scala/mill/discover/DiscoveredTests.scala b/core/src/test/scala/mill/discover/DiscoveredTests.scala index 83c92adc..06887b93 100644 --- a/core/src/test/scala/mill/discover/DiscoveredTests.scala +++ b/core/src/test/scala/mill/discover/DiscoveredTests.scala @@ -6,6 +6,7 @@ import ammonite.main.Router.{ArgSig, EntryPoint} import utest._ import mill.{Module, T} import mill.define.Segment.Label +import mill.define.Segments import mill.util.TestGraphs.{TraitWithModuleObject, nestedModule} import mill.util.TestUtil object DiscoveredTests extends TestSuite{ @@ -27,22 +28,22 @@ object DiscoveredTests extends TestSuite{ ) assert(flattenedHierarchy == expectedHierarchy) - val mapped = discovered.targetsToSegments.map(_.swap) + val mapped = discovered.segmentsToTargets - val expected = Seq( - (List(Label("classInstance"), Label("single")), nestedModule.classInstance.single), - (List(Label("nested"), Label("single")), nestedModule.nested.single), - (List(Label("single")), nestedModule.single) + val expected = Map( + (Segments(Label("classInstance"), Label("single")), nestedModule.classInstance.single), + (Segments(Label("nested"), Label("single")), nestedModule.nested.single), + (Segments(Label("single")), nestedModule.single) ) - assert(mapped.toSet == expected.toSet) + assert(mapped == expected) } 'traitWithModule - { val discovered = Discovered.mapping(TraitWithModuleObject) - val mapped = discovered.targetsToSegments.map(_.swap) + val mapped = discovered.segmentsToTargets val expected = Map( ( - List(Label("TraitModule"), Label("testFramework")), + Segments(Label("TraitModule"), Label("testFramework")), TraitWithModuleObject.TraitModule.testFramework ) ) diff --git a/core/src/test/scala/mill/discover/LabelingTests.scala b/core/src/test/scala/mill/discover/LabelingTests.scala index d1ac0536..5881d50c 100644 --- a/core/src/test/scala/mill/discover/LabelingTests.scala +++ b/core/src/test/scala/mill/discover/LabelingTests.scala @@ -1,6 +1,6 @@ package mill.discover -import mill.define.{Segment, Task} +import mill.define.{Segment, Segments, Task} import mill.util.TestGraphs import utest._ import Discovered.mapping @@ -16,10 +16,10 @@ object LabelingTests extends TestSuite{ def check(mapping: Discovered.Mapping[_], t: Task[_], relPath: Option[String]) = { - val names: Seq[(Task[_], Seq[Segment])] = mapping.targetsToSegments.toSeq + val names: Seq[(Task[_], Segments)] = mapping.targetsToSegments.toSeq val nameMap = names.toMap - val targetLabel = nameMap.get(t).map(_.map{case Label(v) => v}.mkString(".")) + val targetLabel = nameMap.get(t).map(_.render) assert(targetLabel == relPath) } 'singleton - check(mapping(singleton), singleton.single, Some("single")) diff --git a/core/src/test/scala/mill/eval/JavaCompileJarTests.scala b/core/src/test/scala/mill/eval/JavaCompileJarTests.scala index 47e09ec3..c8320fcd 100644 --- a/core/src/test/scala/mill/eval/JavaCompileJarTests.scala +++ b/core/src/test/scala/mill/eval/JavaCompileJarTests.scala @@ -58,7 +58,7 @@ object JavaCompileJarTests extends TestSuite{ Right(Tuple2( evaluated.rawValues(0).asInstanceOf[Result.Success[T]].value, evaluated.evaluated.collect{ - case t: Target[_] if mapping.targetsToSegments.contains(t) => t + case t: Target[_] if mapping.targets.contains(t) => t case t: mill.define.Command[_] => t }.size )) @@ -73,7 +73,7 @@ object JavaCompileJarTests extends TestSuite{ val evaluated = evaluator.evaluate(targets) .evaluated .flatMap(_.asTarget) - .filter(mapping.targetsToSegments.contains) + .filter(mapping.targets.contains) .filter(!_.isInstanceOf[Input[_]]) assert(evaluated == expected) } diff --git a/core/src/test/scala/mill/util/TestEvaluator.scala b/core/src/test/scala/mill/util/TestEvaluator.scala index f18cfabf..646ca418 100644 --- a/core/src/test/scala/mill/util/TestEvaluator.scala +++ b/core/src/test/scala/mill/util/TestEvaluator.scala @@ -18,7 +18,7 @@ class TestEvaluator(mapping: Discovered.Mapping[_], Tuple2( evaluated.rawValues.head.asInstanceOf[Result.Success[T]].value, evaluated.evaluated.collect { - case t: Target[_] if mapping.targetsToSegments.contains(t) && !t.isInstanceOf[Input[_]] => t + case t: Target[_] if mapping.targets.contains(t) && !t.isInstanceOf[Input[_]] => t case t: mill.define.Command[_] => t }.size )) diff --git a/core/src/test/scala/mill/util/TestUtil.scala b/core/src/test/scala/mill/util/TestUtil.scala index 88d28f8a..ae985665 100644 --- a/core/src/test/scala/mill/util/TestUtil.scala +++ b/core/src/test/scala/mill/util/TestUtil.scala @@ -18,7 +18,7 @@ object TestUtil { implicitly, implicitly, BasePath(ammonite.ops.pwd / millModuleEnclosing0.value), - Segments(Nil), + Segments(), implicitly ) ) @@ -51,7 +51,7 @@ object TestUtil { val pure: Boolean) (implicit ctx0: Module.Ctx) extends Test(inputs) with Target[Int]{ - val ctx = ctx0.copy(segments0 = Segments(ctx0.segments0.value :+ ctx0.segment)) + val ctx = ctx0.copy(segments0 = ctx0.segments0 ++ Seq(ctx0.segment)) val readWrite = upickle.default.IntRW |