diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2017-12-31 22:56:45 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2018-01-01 10:10:19 -0800 |
commit | cf5fb5fdfd477e0bb4ffa0e4fec3a8ec01bf5cf1 (patch) | |
tree | f3897463b6f55019f2bbd59ba5cff73cf0fb571f /build.sc | |
parent | 6996c01a391cb9aaa27268dd1f0cf0a1749ade21 (diff) | |
download | mill-cf5fb5fdfd477e0bb4ffa0e4fec3a8ec01bf5cf1.tar.gz mill-cf5fb5fdfd477e0bb4ffa0e4fec3a8ec01bf5cf1.tar.bz2 mill-cf5fb5fdfd477e0bb4ffa0e4fec3a8ec01bf5cf1.zip |
Split Acyclic/Jawn/BetterFiles tests into their own `integration/` test suite.
Those tests now download a snapshot of the relevant git repo rather than vendoring the files, and use a bare `build.sc` instead of having the build object be included in the test classpath.
Tests pass using `sbt integration/test`, but `mill integration.test` still doesn't work
Diffstat (limited to 'build.sc')
-rwxr-xr-x | build.sc | 23 |
1 files changed, 20 insertions, 3 deletions
@@ -155,7 +155,7 @@ val jsbridges = for{ case "0.6" => "0.6.21" case "1.0" => "1.0.0-M2" } - override def ivyDeps = Seq( + def ivyDeps = Seq( Dep("org.scala-js", "scalajs-tools", scalajsVersion) ) } @@ -174,7 +174,24 @@ object scalajslib extends MillModule { ) for((k, v) <- mapping.toSeq) yield s"-D$k=$v" } +} +def testRepos = T{ + Seq( + "MILL_ACYCLIC_REPO" -> + shared.downloadTestRepo("lihaoyi/acyclic", "bc41cd09a287e2c270271e27ccdb3066173a8598", T.ctx().dest/"acyclic"), + "MILL_JAWN_REPO" -> + shared.downloadTestRepo("non/jawn", "fd8dc2b41ce70269889320aeabf8614fe1e8fbcb", T.ctx().dest/"jawn"), + "MILL_BETTERFILES_REPO" -> + shared.downloadTestRepo("pathikrit/better-files", "e235722f91f78b8f34a41b8332d7fae3e8a64141", T.ctx().dest/"better-files") + ) +} +object integration extends MillModule{ + def projectDeps = Seq(moduledefs, scalalib, scalajslib) + def basePath = pwd / 'integration + def testArgs = T{ + for((k, v) <- testRepos()) yield s"-D$k=$v" + } } val assemblyProjects = Seq(scalalib, scalajslib) @@ -196,11 +213,11 @@ def assemblyBase(classpath: Seq[Path], extraArgs: String) } def devAssembly = T{ - assemblyBase(assemblyClasspath().flatten, (scalalib.testArgs() ++ scalajslib.testArgs()).mkString(" ")) + assemblyBase(assemblyClasspath().flatten.map(_.path), (scalalib.testArgs() ++ scalajslib.testArgs()).mkString(" ")) } def releaseAssembly = T{ - assemblyBase(assemblyClasspath().flatten, "") + assemblyBase(assemblyClasspath().flatten.map(_.path), "") } def idea() = T.command{ mill.scalalib.GenIdea() }
\ No newline at end of file |