diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2012-11-23 17:35:52 +0100 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2012-11-23 17:35:52 +0100 |
commit | f9c25fc4acac6a5965d68584d68eee7539e4ba45 (patch) | |
tree | 2d2ae102e229b6997db7c4cd1fb7c4b16378ec7a /src/test | |
parent | 73ab189dcb45bccc0ba6e2e0d445b08057391496 (diff) | |
download | scala-async-f9c25fc4acac6a5965d68584d68eee7539e4ba45.tar.gz scala-async-f9c25fc4acac6a5965d68584d68eee7539e4ba45.tar.bz2 scala-async-f9c25fc4acac6a5965d68584d68eee7539e4ba45.zip |
Forbid await in try/catch.
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/scala/scala/async/neg/NakedAwait.scala | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/test/scala/scala/async/neg/NakedAwait.scala b/src/test/scala/scala/async/neg/NakedAwait.scala index 8b85977..a0c4e4d 100644 --- a/src/test/scala/scala/async/neg/NakedAwait.scala +++ b/src/test/scala/scala/async/neg/NakedAwait.scala @@ -87,4 +87,34 @@ class NakedAwait { """.stripMargin } } + + @Test + def tryBody() { + expectError("await must not be used under a try/catch.") { + """ + | import _root_.scala.async.AsyncId._ + | async { try { await(false) } catch { case _ => } } + """.stripMargin + } + } + + @Test + def catchBody() { + expectError("await must not be used under a try/catch.") { + """ + | import _root_.scala.async.AsyncId._ + | async { try { () } catch { case _ => await(false) } } + """.stripMargin + } + } + + @Test + def finallyBody() { + expectError("await must not be used under a try/catch.") { + """ + | import _root_.scala.async.AsyncId._ + | async { try { () } finally { await(false) } } + """.stripMargin + } + } } |