diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2017-11-18 13:36:13 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2017-11-18 13:36:13 -0800 |
commit | a15ea041996029f406377ad7474b1f3e8154ab5d (patch) | |
tree | 4ce17286e81a8d3ae01b028a60444fba69bcf995 /core/src/test | |
parent | 910b49da3f068768fd5826407759aa4defbcfdf4 (diff) | |
download | mill-a15ea041996029f406377ad7474b1f3e8154ab5d.tar.gz mill-a15ea041996029f406377ad7474b1f3e8154ab5d.tar.bz2 mill-a15ea041996029f406377ad7474b1f3e8154ab5d.zip |
Force compile errors for missing implicits in `Discovered` materialization to point at their source methods, for easier fixing
Diffstat (limited to 'core/src/test')
-rw-r--r-- | core/src/test/scala/mill/discover/DiscoveredTests.scala | 31 | ||||
-rw-r--r-- | core/src/test/scala/mill/eval/EvaluationTests.scala | 1 |
2 files changed, 30 insertions, 2 deletions
diff --git a/core/src/test/scala/mill/discover/DiscoveredTests.scala b/core/src/test/scala/mill/discover/DiscoveredTests.scala index dae7ff1b..843ec474 100644 --- a/core/src/test/scala/mill/discover/DiscoveredTests.scala +++ b/core/src/test/scala/mill/discover/DiscoveredTests.scala @@ -1,7 +1,9 @@ package mill.discover +import java.io.InputStreamReader + import utest._ -import mill.Module +import mill.{Module, T} import mill.util.TestUtil.test object DiscoveredTests extends TestSuite{ @@ -48,5 +50,32 @@ object DiscoveredTests extends TestSuite{ ) assert(mapped.toSet == expected.toSet) } + 'compileError - { + 'unserializableTarget - { + + object outer extends Module { + def single = mill.T{ new InputStreamReader(System.in) } + } + + val error = compileError("Discovered[outer.type]") + assert( + error.msg.contains("could not find implicit value"), + error.pos.contains("def single = mill.T{ new InputStreamReader(System.in) }") + ) + } + + 'unreadableCommand - { + object outer extends Module { + def single(in: InputStreamReader) = mill.T.command{ println(123) } + } + + val error = compileError("Discovered[outer.type]") + + assert( + error.msg.contains("could not find implicit value"), + error.pos.contains("def single(in: InputStreamReader) = mill.T.command{ println(123) }") + ) + } + } } } diff --git a/core/src/test/scala/mill/eval/EvaluationTests.scala b/core/src/test/scala/mill/eval/EvaluationTests.scala index ccb476e7..9a177b58 100644 --- a/core/src/test/scala/mill/eval/EvaluationTests.scala +++ b/core/src/test/scala/mill/eval/EvaluationTests.scala @@ -5,7 +5,6 @@ import mill.util.TestUtil.{Test, test} import mill.define.{Target, Task} import mill.{Module, T} import mill.discover.Discovered -import mill.eval.Evaluator import mill.util.{OSet, TestUtil} import utest._ import utest.framework.TestPath |