blob: c7e851692cdd0c051355b9f1c95f9133e60d66f5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
package mill.eval
import ammonite.ops._
import mill.util.{TestEvaluator, TestUtil}
import mill.T
import mill.util.TestEvaluator.implicitDisover
import utest._
object ModuleTests extends TestSuite{
object ExternalModule extends mill.define.ExternalModule {
def x = T{13}
object inner extends mill.Module{
def y = T{17}
}
}
object Build extends TestUtil.BaseModule{
def z = T{ ExternalModule.x() + ExternalModule.inner.y() }
}
val tests = Tests {
rm(TestEvaluator.externalOutPath)
'externalModuleTargetsAreNamespacedByModulePackagePath - {
val check = new TestEvaluator(
Build,
pwd / 'target / 'external
)
val Right((30, 1)) = check.apply(Build.z)
val base = check.evaluator.outPath
assert(
read(base / 'z / "meta.json").contains("30"),
read(base / 'mill / 'eval / 'ModuleTests / 'ExternalModule / 'x / "meta.json").contains("13"),
read(base / 'mill / 'eval / 'ModuleTests / 'ExternalModule / 'inner / 'y / "meta.json").contains("17")
)
}
'externalModuleMustBeGlobalStatic - {
object Build extends mill.define.ExternalModule {
def z = T{ ExternalModule.x() + ExternalModule.inner.y() }
}
intercept[java.lang.AssertionError]{ Build }
}
}
}
|