diff options
Diffstat (limited to 'scalajslib')
3 files changed, 20 insertions, 48 deletions
diff --git a/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala b/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala index 604df3f7..86abbd14 100644 --- a/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala +++ b/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala @@ -37,7 +37,7 @@ class ScalaJSBridge extends mill.scalajslib.ScalaJSBridge { val env = new NodeJSEnv().loadLibs( Seq(ResolvedJSDependency.minimal(new FileVirtualJSFile(linkedFile))) ) - val jsConsole = ConsoleJSConsole + val config = TestAdapter.Config().withLogger(new ScalaConsoleLogger) val adapter = new TestAdapter(env, config) diff --git a/scalajslib/src/mill/scalajslib/ScalaJSModule.scala b/scalajslib/src/mill/scalajslib/ScalaJSModule.scala index b3cc28a4..5a3b6526 100644 --- a/scalajslib/src/mill/scalajslib/ScalaJSModule.scala +++ b/scalajslib/src/mill/scalajslib/ScalaJSModule.scala @@ -4,7 +4,7 @@ package scalajslib import ammonite.ops.{Path, exists, ls, mkdir, rm} import coursier.Cache import coursier.maven.MavenRepository -import mill.eval.PathRef +import mill.eval.{PathRef, Result} import mill.eval.Result.Success import mill.scalalib.Lib.resolveDependencies import mill.scalalib.{CompilationResult, Dep, DepSyntax, TestModule} @@ -71,7 +71,7 @@ trait ScalaJSModule extends scalalib.ScalaModule { outer => ScalaJSBridge.scalaJSBridge(), toolsClasspath(), runClasspath(), - mainClass(), + finalMainClassOpt().toOption, FastOpt ) } @@ -81,39 +81,32 @@ trait ScalaJSModule extends scalalib.ScalaModule { outer => ScalaJSBridge.scalaJSBridge(), toolsClasspath(), runClasspath(), - mainClass(), + finalMainClassOpt().toOption, FullOpt ) } - override def runLocal(args: String*) = T.command { run(args:_*) } + override def runLocal(args: String*) = T.command { run(args:_*) } override def run(args: String*) = T.command { - if(mainClass().isEmpty) { - throw new RuntimeException("No mainClass provided!") + finalMainClassOpt() match{ + case Left(err) => Result.Failure(err) + case Right(_) => + ScalaJSBridge.scalaJSBridge().run( + toolsClasspath().map(_.path), + fastOpt().path.toIO + ) + Result.Success(()) } - ScalaJSBridge.scalaJSBridge().run( - toolsClasspath().map(_.path), - fastOpt().path.toIO - ) } - override def runMainLocal(mainClass: String, args: String*) = T.command { runMain(mainClass, args:_*) } - - override def runMain(mainClass: String, args: String*) = T.command { - val linkedFile = link( - ScalaJSBridge.scalaJSBridge(), - toolsClasspath(), - runClasspath(), - Some(mainClass), - FastOpt - ) + override def runMainLocal(mainClass: String, args: String*) = T.command[Unit] { + mill.eval.Result.Failure("runMain is not supported in Scala.js") + } - ScalaJSBridge.scalaJSBridge().run( - toolsClasspath().map(_.path), - linkedFile.path.toIO - ) + override def runMain(mainClass: String, args: String*) = T.command[Unit] { + mill.eval.Result.Failure("runMain is not supported in Scala.js") } def link(worker: ScalaJSWorker, diff --git a/scalajslib/test/src/mill/scalajslib/HelloJSWorldTests.scala b/scalajslib/test/src/mill/scalajslib/HelloJSWorldTests.scala index 23db8cf6..2429a189 100644 --- a/scalajslib/test/src/mill/scalajslib/HelloJSWorldTests.scala +++ b/scalajslib/test/src/mill/scalajslib/HelloJSWorldTests.scala @@ -204,11 +204,8 @@ object HelloJSWorldTests extends TestSuite { // 'scalaTest_2124_100M2 - checkScalaTest("2.12.4", "1.0.0-M2") } - def checkRun(scalaVersion: String, scalaJSVersion: String, mainClass: Option[String] = None): Unit = { - val task = mainClass match { - case Some(main) => HelloJSWorld.helloJsWorld(scalaVersion, scalaJSVersion).runMain(main) - case None => HelloJSWorld.helloJsWorld(scalaVersion, scalaJSVersion).run() - } + def checkRun(scalaVersion: String, scalaJSVersion: String): Unit = { + val task = HelloJSWorld.helloJsWorld(scalaVersion, scalaJSVersion).run() val Right((_, evalCount)) = helloWorldEvaluator(task) @@ -224,24 +221,6 @@ object HelloJSWorldTests extends TestSuite { ) } - 'runMain - { - val mainClass = Some("Main") - 'run_2118_0622 - checkRun("2.11.8", "0.6.22", mainClass) - 'run_2124_0622 - checkRun("2.12.4", "0.6.22", mainClass) - 'run_2118_100M2 - checkRun("2.11.8", "1.0.0-M2", mainClass) - 'run_2124_100M2 - checkRun("2.12.4", "1.0.0-M2", mainClass) - - 'wrongMain - { - val wrongMainClass = "Foo" - val task = HelloJSWorld.helloJsWorld("2.12.4", "0.6.22").runMain(wrongMainClass) - - val Left(Result.Exception(ex, _)) = helloWorldEvaluator(task) - - assert( - ex.isInstanceOf[Exception] - ) - } - } 'run - { 'run_2118_0622 - checkRun("2.11.8", "0.6.22") 'run_2124_0622 - checkRun("2.12.4", "0.6.22") |