summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2017-10-21 20:09:20 -0700
committerLi Haoyi <haoyi.sg@gmail.com>2017-10-21 20:09:20 -0700
commit6f2de230b39fb9f178df7c2470b667f7f4377478 (patch)
tree040962eab0701850f797aaa6a16e4be183a03b75 /src/test
parent71ddc7e65666844e063c48c80b3ce7fecfe77a0f (diff)
downloadmill-6f2de230b39fb9f178df7c2470b667f7f4377478.tar.gz
mill-6f2de230b39fb9f178df7c2470b667f7f4377478.tar.bz2
mill-6f2de230b39fb9f178df7c2470b667f7f4377478.zip
Add `StaticContext` macro to let us distinguish top-level targets from dynamically generated targets
Diffstat (limited to 'src/test')
-rw-r--r--src/test/scala/hbt/StaticContextTests.scala36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/test/scala/hbt/StaticContextTests.scala b/src/test/scala/hbt/StaticContextTests.scala
new file mode 100644
index 00000000..022cfd1e
--- /dev/null
+++ b/src/test/scala/hbt/StaticContextTests.scala
@@ -0,0 +1,36 @@
+package hbt
+
+import utest._
+class Helper{
+ val static = implicitly[StaticContext]
+ object Nested {
+ val static = implicitly[StaticContext]
+ }
+ def method = implicitly[StaticContext]
+}
+object StaticContextTests extends TestSuite{
+ val static = implicitly[StaticContext]
+ object Nested{
+ val static = implicitly[StaticContext]
+ def method = implicitly[StaticContext]
+ class Helper{
+ val static = implicitly[StaticContext]
+ }
+ }
+
+ def method = implicitly[StaticContext]
+ val tests = Tests{
+ val helper = new Helper()
+ 'inObject - assert(static.value)
+ 'inClass- assert(!helper.static.value)
+ 'inMethod - assert(!method.value)
+
+ 'inObjectObject - assert(Nested.static.value)
+ 'inObjectClass- assert(!helper.static.value)
+ 'inObjectMethod- assert(!Nested.method.value)
+
+ 'inClassObject - assert(!helper.Nested.static.value)
+ 'inClassMethod- assert(!helper.method.value)
+
+ }
+}