It also turns out that uTest was running on 0.3.0 forever, even when the code being tested was on 0.4.0. I don't know why that worked, but did anything significant change between 0.3.0 and 0.4.3 w.r.t. the RhinoBasedScalaJSEnvironment? The fact that it's blowing up so early makes me think i'm missing something in the setup rather than in the cross-compiled code
java.lang.ClassCastException: org.mozilla.javascript.UniqueTag cannot be cast to org.mozilla.javascript.Scriptable
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:50)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:49)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.lazifyScalaJSFields(ScalaJSCoreLib.scala:49)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.insertInto(ScalaJSCoreLib.scala:27)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.Option.foreach(Option.scala:236)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment.runInContextAndScope(RhinoBasedScalaJSEnvironment.scala:103)
at utest.runner.JsRunner.doStuff(JsRunner.scala:24)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.Task.execute(Task.scala:20)
at sbt.TestRunner.runTest$1(TestFramework.scala:84)
at sbt.TestRunner.run(TestFramework.scala:94)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:212)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFunction.apply(TestFramework.scala:229)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$
4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
java.lang.ClassCastException: org.mozilla.javascript.UniqueTag cannot be cast to org.mozilla.javascript.Scriptable
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:50)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:49)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.lazifyScalaJSFields(ScalaJSCoreLib.scala:49)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.insertInto(ScalaJSCoreLib.scala:27)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.Option.foreach(Option.scala:236)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment.runInContextAndScope(RhinoBasedScalaJSEnvironment.scala:103)
at utest.runner.JsRunner.doStuff(JsRunner.scala:24)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.Task.execute(Task.scala:20)
at sbt.TestRunner.runTest$1(TestFramework.scala:84)
at sbt.TestRunner.run(TestFramework.scala:94)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:212)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFunction.apply(TestFramework.scala:229)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$
4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
java.lang.RuntimeException: Exception while running JS code
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment.runInContextAndScope(RhinoBasedScalaJSEnvironment.scala:116)
at utest.runner.JsRunner.doStuff(JsRunner.scala:24)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.Task.execute(Task.scala:20)
at sbt.TestRunner.runTest$1(TestFramework.scala:84)
at sbt.TestRunner.run(TestFramework.scala:94)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:212)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFunction.apply(TestFramework.scala:229)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$
4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
Caused by: java.lang.ClassCastException: org.mozilla.javascript.UniqueTag cannot be cast to org.mozilla.javascript.Scriptable
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:50)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:49)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.lazifyScalaJSFields(ScalaJSCoreLib.scala:49)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.insertInto(ScalaJSCoreLib.scala:27)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.Option.foreach(Option.scala:236)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment.runInContextAndScope(RhinoBasedScalaJSEnvironment.scala:103)
at utest.runner.JsRunner.doStuff(JsRunner.scala:24)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.Task.execute(Task.scala:20)
at sbt.TestRunner.runTest$1(TestFramework.scala:84)
at sbt.TestRunner.run(TestFramework.scala:94)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:212)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFunction.apply(TestFramework.scala:229)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$
4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
java.lang.RuntimeException: Exception while running JS code
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment.runInContextAndScope(RhinoBasedScalaJSEnvironment.scala:116)
at utest.runner.JsRunner.doStuff(JsRunner.scala:24)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.Task.execute(Task.scala:20)
at sbt.TestRunner.runTest$1(TestFramework.scala:84)
at sbt.TestRunner.run(TestFramework.scala:94)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:212)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFunction.apply(TestFramework.scala:229)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$
4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
Caused by: java.lang.ClassCastException: org.mozilla.javascript.UniqueTag cannot be cast to org.mozilla.javascript.Scriptable
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:50)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib$$anonfun$lazifyScalaJSFields$2.apply(ScalaJSCoreLib.scala:49)
at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:772)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:771)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.lazifyScalaJSFields(ScalaJSCoreLib.scala:49)
at scala.scalajs.sbtplugin.environment.rhino.ScalaJSCoreLib.insertInto(ScalaJSCoreLib.scala:27)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment$$anonfun$runInContextAndScope$4.apply(RhinoBasedScalaJSEnvironment.scala:103)
at scala.Option.foreach(Option.scala:236)
at scala.scalajs.sbtplugin.environment.RhinoBasedScalaJSEnvironment.runInContextAndScope(RhinoBasedScalaJSEnvironment.scala:103)
at utest.runner.JsRunner.doStuff(JsRunner.scala:24)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.GenericRunner$$anonfun$tasks$1$$anonfun$apply$1.apply(GenericRunner.scala:32)
at utest.runner.Task.execute(Task.scala:20)
at sbt.TestRunner.runTest$1(TestFramework.scala:84)
at sbt.TestRunner.run(TestFramework.scala:94)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:224)
at sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:212)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:224)
at sbt.TestFunction.apply(TestFramework.scala:229)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.Tests$$anonfun$7.apply(Tests.scala:196)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:45)
at sbt.std.Transform$$anon$
4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)