diff options
Diffstat (limited to 'integration/test/src')
4 files changed, 68 insertions, 3 deletions
diff --git a/integration/test/src/mill/integration/IntegrationTestSuite.scala b/integration/test/src/mill/integration/IntegrationTestSuite.scala index 756b724a..d24261f3 100644 --- a/integration/test/src/mill/integration/IntegrationTestSuite.scala +++ b/integration/test/src/mill/integration/IntegrationTestSuite.scala @@ -17,9 +17,15 @@ abstract class IntegrationTestSuite(repoKey: String, val workspaceSlug: String, wrapper } + def buildFiles: Seq[Path] = { + Seq(buildFilePath / "build.sc") + } + override def initWorkspace() = { super.initWorkspace() - cp.over(buildFilePath / "build.sc", workspacePath / "build.sc") + buildFiles.foreach { file => + cp.over(file, workspacePath / file.name) + } assert(!ls.rec(workspacePath).exists(_.ext == "class")) } } diff --git a/integration/test/src/mill/integration/PlayJsonTests.scala b/integration/test/src/mill/integration/PlayJsonTests.scala new file mode 100644 index 00000000..c78a256e --- /dev/null +++ b/integration/test/src/mill/integration/PlayJsonTests.scala @@ -0,0 +1,57 @@ +package mill.integration + +import ammonite.ops._ +import utest._ + +class PlayJsonTests(fork: Boolean) extends IntegrationTestSuite("MILL_PLAY_JSON_REPO", "play-json", fork) { + + override def buildFiles: Seq[Path] = { + ls(buildFilePath).filter(_.ext == "sc") + } + + val tests = Tests{ + initWorkspace() + + 'jvm - { + assert(eval("playJsonJvm[2.12.4].test")) + val jvmMeta = meta("playJsonJvm[2.12.4].test.test") + + assert( + jvmMeta.contains("play.api.libs.json.JsonSharedSpec"), + jvmMeta.contains("JSON should support basic array operations") + ) + + assert( + jvmMeta.contains("play.api.libs.json.JsonValidSpec"), + jvmMeta.contains("JSON reads should::validate Dates") + ) + } + 'js - { + assert(eval("playJsonJs[2.12.4].test")) + val jsMeta = meta("playJsonJs[2.12.4].test.test") + + assert( + jsMeta.contains("play.api.libs.json.JsonSharedSpec"), + jsMeta.contains("JSON should support basic array operations") + ) + + assert( + jsMeta.contains("play.api.libs.json.JsonSpec"), + jsMeta.contains("Complete JSON should create full object when lose precision when parsing BigDecimals") + ) + } + 'playJoda - { + assert(eval("playJoda[2.12.4].test")) + val metaFile = meta("playJoda[2.12.4].test.test") + + assert( + metaFile.contains("play.api.libs.json.JsonJodaValidSpec"), + metaFile.contains("JSON reads should::validate Dates") + ) + } + + 'benchmarks - { +// "benchmarks[2.12.4].runJmh" -i 1 -wi 1 -f1 -t1 + } + } +} diff --git a/integration/test/src/mill/integration/forked/Tests.scala b/integration/test/src/mill/integration/forked/Tests.scala index 6933bbbe..4a2e9f53 100644 --- a/integration/test/src/mill/integration/forked/Tests.scala +++ b/integration/test/src/mill/integration/forked/Tests.scala @@ -4,4 +4,5 @@ object AcyclicTests extends mill.integration.AcyclicTests(fork = true) object AmmoniteTests extends mill.integration.AmmoniteTests(fork = true) object BetterFilesTests extends mill.integration.BetterFilesTests(fork = true) object JawnTests extends mill.integration.JawnTests(fork = true) -object UpickleTests extends mill.integration.UpickleTests(fork = true)
\ No newline at end of file +object UpickleTests extends mill.integration.UpickleTests(fork = true) +object PlayJsonTests extends mill.integration.PlayJsonTests(fork = true) diff --git a/integration/test/src/mill/integration/local/Tests.scala b/integration/test/src/mill/integration/local/Tests.scala index 21b9581c..b4f78ee4 100644 --- a/integration/test/src/mill/integration/local/Tests.scala +++ b/integration/test/src/mill/integration/local/Tests.scala @@ -4,4 +4,5 @@ object AcyclicTests extends mill.integration.AcyclicTests(fork = false) object AmmoniteTests extends mill.integration.AmmoniteTests(fork = false) object BetterFilesTests extends mill.integration.BetterFilesTests(fork = false) object JawnTests extends mill.integration.JawnTests(fork = false) -object UpickleTests extends mill.integration.UpickleTests(fork = false)
\ No newline at end of file +object UpickleTests extends mill.integration.UpickleTests(fork = false) +object PlayJsonTests extends mill.integration.PlayJsonTests(fork = false) |