Skip to content

Commit

Permalink
Update sbt-plugin tests to use new linking tasks
Browse files Browse the repository at this point in the history
  • Loading branch information
gzm0 committed Sep 16, 2020
1 parent 993d734 commit 7846888
Show file tree
Hide file tree
Showing 7 changed files with 29 additions and 29 deletions.
20 changes: 10 additions & 10 deletions sbt-plugin/src/sbt-test/incremental/change-config-and-source/test
@@ -1,16 +1,16 @@
$ copy-file Main.scala.first Main.scala
> fastOptJS
$ copy-file target/scala-2.12/change-config-and-source-fastopt.js target/scala-2.12/output-1.js
> linkJSDev
$ copy-file target/scala-2.12/change-config-and-source-dev/main.js target/scala-2.12/output-1.js

# When the linker config and source both change, re-running fastOptJS should re-link:
# When the linker config and source both change, re-running linkJSDev should re-link:
> set scalaJSLinkerConfig ~= (_.withOptimizer(false))
$ copy-file Main.scala.second Main.scala
> fastOptJS
-$ must-mirror target/scala-2.12/change-config-and-source-fastopt.js target/scala-2.12/output-1.js
$ newer target/scala-2.12/change-config-and-source-fastopt.js target/scala-2.12/output-1.js
$ copy-file target/scala-2.12/change-config-and-source-fastopt.js target/scala-2.12/output-2.js
> linkJSDev
-$ must-mirror target/scala-2.12/change-config-and-source-dev/main.js target/scala-2.12/output-1.js
$ newer target/scala-2.12/change-config-and-source-dev/main.js target/scala-2.12/output-1.js
$ copy-file target/scala-2.12/change-config-and-source-dev/main.js target/scala-2.12/output-2.js

# However, this re-linking should not happen more than once:
> fastOptJS
$ must-mirror target/scala-2.12/change-config-and-source-fastopt.js target/scala-2.12/output-2.js
-$ newer target/scala-2.12/change-config-and-source-fastopt.js target/scala-2.12/output-2.js
> linkJSDev
$ must-mirror target/scala-2.12/change-config-and-source-dev/main.js target/scala-2.12/output-2.js
-$ newer target/scala-2.12/change-config-and-source-dev/main.js target/scala-2.12/output-2.js
20 changes: 10 additions & 10 deletions sbt-plugin/src/sbt-test/incremental/change-config/test
@@ -1,14 +1,14 @@
> fastOptJS
$ copy-file target/scala-2.12/change-config-fastopt.js target/scala-2.12/output-1.js
> linkJSDev
$ copy-file target/scala-2.12/change-config-dev/main.js target/scala-2.12/output-1.js

# When the linker config changes, re-running fastOptJS should re-link:
# When the linker config changes, re-running linkJSDev should re-link:
> set scalaJSLinkerConfig ~= (_.withOptimizer(false))
> fastOptJS
-$ must-mirror target/scala-2.12/change-config-fastopt.js target/scala-2.12/output-1.js
$ newer target/scala-2.12/change-config-fastopt.js target/scala-2.12/output-1.js
$ copy-file target/scala-2.12/change-config-fastopt.js target/scala-2.12/output-2.js
> linkJSDev
-$ must-mirror target/scala-2.12/change-config-dev/main.js target/scala-2.12/output-1.js
$ newer target/scala-2.12/change-config-dev/main.js target/scala-2.12/output-1.js
$ copy-file target/scala-2.12/change-config-dev/main.js target/scala-2.12/output-2.js

# However, this re-linking should not happen more than once:
> fastOptJS
$ must-mirror target/scala-2.12/change-config-fastopt.js target/scala-2.12/output-2.js
-$ newer target/scala-2.12/change-config-fastopt.js target/scala-2.12/output-2.js
> linkJSDev
$ must-mirror target/scala-2.12/change-config-dev/main.js target/scala-2.12/output-2.js
-$ newer target/scala-2.12/change-config-dev/main.js target/scala-2.12/output-2.js
6 changes: 3 additions & 3 deletions sbt-plugin/src/sbt-test/incremental/fix-compile-error/test
@@ -1,6 +1,6 @@
$ copy-file Data.scala.good Data.scala
> fastOptJS
> linkJSDev
$ copy-file Data.scala.broken Data.scala
-> fastOptJS
-> linkJSDev
$ copy-file Data.scala.fixed Data.scala
> fastOptJS
> linkJSDev
2 changes: 1 addition & 1 deletion sbt-plugin/src/sbt-test/linker/custom-linker/build.sbt
Expand Up @@ -36,7 +36,7 @@ lazy val main = project
)

check := {
val modules = (scalaJSImportedModules in (main, Compile, fastOptJS)).value
val modules = (scalaJSImportedModules in (main, Compile, linkJSDev)).value
val expected = Set("foo.js", "bar.js")
// test sizes as well to make sure that there are no duplicates in `modules`
assert(modules.size == expected.size && modules.toSet == expected,
Expand Down
Expand Up @@ -41,7 +41,7 @@ object CustomScalaJSLinkerPlugin extends AutoPlugin {
}

private def scalaJSStageSettings(stage: Stage,
key: TaskKey[Attributed[File]]): Seq[Setting[_]] = {
key: TaskKey[Attributed[Report]]): Seq[Setting[_]] = {
val entryPointOutputFileName =
s"entrypoints-${stage.toString.toLowerCase}.txt"

Expand Down Expand Up @@ -91,8 +91,8 @@ object CustomScalaJSLinkerPlugin extends AutoPlugin {
)

private lazy val configSettings: Seq[Setting[_]] = Def.settings(
scalaJSStageSettings(FastOptStage, fastOptJS),
scalaJSStageSettings(FullOptStage, fullOptJS),
scalaJSStageSettings(FastOptStage, linkJSDev),
scalaJSStageSettings(FullOptStage, linkJSProd),
)

override def projectSettings: Seq[Setting[_]] = Def.settings(
Expand Down
@@ -1 +1 @@
> my-project/compile:fastOptJS
> my-project/compile:linkJSDev
2 changes: 1 addition & 1 deletion sbt-plugin/src/sbt-test/linker/non-existent-classpath/test
@@ -1 +1 @@
> fastOptJS
> linkJSDev

0 comments on commit 7846888

Please sign in to comment.