diff options
Diffstat (limited to 'core/src/test/scala/mill/main/MainTests.scala')
-rw-r--r-- | core/src/test/scala/mill/main/MainTests.scala | 50 |
1 files changed, 24 insertions, 26 deletions
diff --git a/core/src/test/scala/mill/main/MainTests.scala b/core/src/test/scala/mill/main/MainTests.scala index b4568267..a22cb5a6 100644 --- a/core/src/test/scala/mill/main/MainTests.scala +++ b/core/src/test/scala/mill/main/MainTests.scala @@ -2,20 +2,18 @@ package mill.main import mill.Module import mill.define.{Segment, Task} -import mill.discover.{Discovered, Mirror} import mill.util.TestGraphs._ import mill.util.TestUtil.test import utest._ -import Discovered.mapping object MainTests extends TestSuite{ - def check[T](mapping: Discovered.Mapping[T], + def check[T](module: mill.Module, selectorString: String, expected: Either[String, Task[_]]) = { val resolved = for{ selectors <- mill.main.ParseArgs(Seq(selectorString)).map(_._1.head) val crossSelectors = selectors.map{case Segment.Cross(x) => x.toList.map(_.toString) case _ => Nil} - task <- mill.main.Resolve.resolve(selectors, mapping.mirror, mapping.base, Nil, crossSelectors, Nil) + task <- mill.main.Resolve.resolve(selectors, module, Nil, crossSelectors, Nil) } yield task assert(resolved == expected) } @@ -23,39 +21,39 @@ object MainTests extends TestSuite{ val graphs = new mill.util.TestGraphs() import graphs._ 'single - { - 'pos - check(mapping(singleton), "single", Right(singleton.single)) - 'neg1 - check(mapping(singleton), "doesntExist", Left("Cannot resolve task doesntExist")) - 'neg2 - check(mapping(singleton), "single.doesntExist", Left("Cannot resolve module single")) - 'neg3 - check(mapping(singleton), "", Left("Selector cannot be empty")) + 'pos - check(singleton, "single", Right(singleton.single)) + 'neg1 - check(singleton, "doesntExist", Left("Cannot resolve task doesntExist")) + 'neg2 - check(singleton, "single.doesntExist", Left("Cannot resolve module single")) + 'neg3 - check(singleton, "", Left("Selector cannot be empty")) } 'nested - { - 'pos1 - check(mapping(nestedModule), "single", Right(nestedModule.single)) - 'pos2 - check(mapping(nestedModule), "nested.single", Right(nestedModule.nested.single)) - 'pos3 - check(mapping(nestedModule), "classInstance.single", Right(nestedModule.classInstance.single)) - 'neg1 - check(mapping(nestedModule), "doesntExist", Left("Cannot resolve task doesntExist")) - 'neg2 - check(mapping(nestedModule), "single.doesntExist", Left("Cannot resolve module single")) - 'neg3 - check(mapping(nestedModule), "nested.doesntExist", Left("Cannot resolve task nested.doesntExist")) - 'neg4 - check(mapping(nestedModule), "classInstance.doesntExist", Left("Cannot resolve task classInstance.doesntExist")) + 'pos1 - check(nestedModule, "single", Right(nestedModule.single)) + 'pos2 - check(nestedModule, "nested.single", Right(nestedModule.nested.single)) + 'pos3 - check(nestedModule, "classInstance.single", Right(nestedModule.classInstance.single)) + 'neg1 - check(nestedModule, "doesntExist", Left("Cannot resolve task doesntExist")) + 'neg2 - check(nestedModule, "single.doesntExist", Left("Cannot resolve module single")) + 'neg3 - check(nestedModule, "nested.doesntExist", Left("Cannot resolve task nested.doesntExist")) + 'neg4 - check(nestedModule, "classInstance.doesntExist", Left("Cannot resolve task classInstance.doesntExist")) } 'cross - { 'single - { - 'pos1 - check(mapping(singleCross), "cross[210].suffix", Right(singleCross.cross("210").suffix)) - 'pos2 - check(mapping(singleCross), "cross[211].suffix", Right(singleCross.cross("211").suffix)) - 'neg1 - check(mapping(singleCross), "cross[210].doesntExist", Left("Cannot resolve task cross[210].doesntExist")) - 'neg2 - check(mapping(singleCross), "cross[doesntExist].doesntExist", Left("Cannot resolve cross cross[doesntExist]")) - 'neg2 - check(mapping(singleCross), "cross[doesntExist].suffix", Left("Cannot resolve cross cross[doesntExist]")) + 'pos1 - check(singleCross, "cross[210].suffix", Right(singleCross.cross("210").suffix)) + 'pos2 - check(singleCross, "cross[211].suffix", Right(singleCross.cross("211").suffix)) + 'neg1 - check(singleCross, "cross[210].doesntExist", Left("Cannot resolve task cross[210].doesntExist")) + 'neg2 - check(singleCross, "cross[doesntExist].doesntExist", Left("Cannot resolve cross cross[doesntExist]")) + 'neg2 - check(singleCross, "cross[doesntExist].suffix", Left("Cannot resolve cross cross[doesntExist]")) } // 'double - { // // 'pos1 - check( -// mapping(doubleCross), +// doubleCross, // "cross[jvm,210].suffix", // Right(doubleCross.cross("jvm", "210").suffix) // ) // 'pos2 - check( -// mapping(doubleCross), +// doubleCross, // "cross[jvm,211].suffix", // Right(doubleCross.cross("jvm", "211").suffix) // ) @@ -63,24 +61,24 @@ object MainTests extends TestSuite{ 'nested - { 'indirect - { 'pos1 - check( - mapping(indirectNestedCrosses), + indirectNestedCrosses, "cross[210].cross2[js].suffix", Right(indirectNestedCrosses.cross("210").cross2("js").suffix) ) 'pos2 - check( - mapping(indirectNestedCrosses), + indirectNestedCrosses, "cross[211].cross2[jvm].suffix", Right(indirectNestedCrosses.cross("211").cross2("jvm").suffix) ) } 'direct - { 'pos1 - check( - mapping(nestedCrosses), + nestedCrosses, "cross[210].cross2[js].suffix", Right(nestedCrosses.cross("210").cross2("js").suffix) ) 'pos2 - check( - mapping(nestedCrosses), + nestedCrosses, "cross[211].cross2[jvm].suffix", Right(nestedCrosses.cross("211").cross2("jvm").suffix) ) |