aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala/scala/async/TreeInterrogation.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/scala/async/TreeInterrogation.scala')
-rw-r--r--src/test/scala/scala/async/TreeInterrogation.scala31
1 files changed, 17 insertions, 14 deletions
diff --git a/src/test/scala/scala/async/TreeInterrogation.scala b/src/test/scala/scala/async/TreeInterrogation.scala
index 08d2c78..485831b 100644
--- a/src/test/scala/scala/async/TreeInterrogation.scala
+++ b/src/test/scala/scala/async/TreeInterrogation.scala
@@ -32,29 +32,32 @@ class TreeInterrogation {
val varDefs = tree1.collect {
case ValDef(mods, name, _, _) if mods.hasFlag(Flag.MUTABLE) => name
}
- varDefs.map(_.decoded).toSet mustBe(Set("state$async", "onCompleteHandler$async", "await$1", "await$2"))
+ varDefs.map(_.decoded).toSet mustBe (Set("state$async", "onCompleteHandler$async", "await$1", "await$2"))
}
- @Test
+ //@Test
def sandbox() {
- sys.props("scala.async.debug") = "true"
+ sys.props("scala.async.debug") = true.toString
+ sys.props("scala.async.trace") = false.toString
+
val cm = reflect.runtime.currentMirror
val tb = mkToolbox("-cp target/scala-2.10/classes")
val tree = tb.parse(
""" import _root_.scala.async.AsyncId._
| async {
- | var xxx: Int = 0
- | var y = 0
- | println("before while")
- | while (xxx < 3) {
- | println("in while before await")
- | y = await(xxx)
- | println("in while after await")
- | xxx = xxx + 1
+ | var sum = 0
+ | var i = 0
+ | while (i < 5) {
+ | var j = 0
+ | while (j < 5) {
+ | sum += await(i) * await(j)
+ | j += 1
+ | }
+ | i += 1
| }
- | println("after while")
- | y
- | }""".stripMargin)
+ | sum
+ | }
+ | """.stripMargin)
println(tree)
val tree1 = tb.typeCheck(tree.duplicate)
println(cm.universe.show(tree1))