summaryrefslogtreecommitdiff
path: root/test/files
diff options
context:
space:
mode:
Diffstat (limited to 'test/files')
-rw-r--r--test/files/jvm/scala-concurrent-tck.scala30
1 files changed, 27 insertions, 3 deletions
diff --git a/test/files/jvm/scala-concurrent-tck.scala b/test/files/jvm/scala-concurrent-tck.scala
index 774d4236b7..ffe23de756 100644
--- a/test/files/jvm/scala-concurrent-tck.scala
+++ b/test/files/jvm/scala-concurrent-tck.scala
@@ -268,7 +268,7 @@ trait FutureProjections extends TestBase {
done =>
val f = future { 0 }
try {
- println(await(0, f.failed))
+ await(0, f.failed)
assert(false)
} catch {
case nsee: NoSuchElementException => done()
@@ -280,14 +280,38 @@ trait FutureProjections extends TestBase {
testFailedSuccessOnComplete()
testFailedSuccessOnFailure()
testFailedFailureAwait()
- //testFailedSuccessAwait()
+ testFailedSuccessAwait()
}
trait Blocking extends TestBase {
- // TODO
+ def testAwaitSuccess(): Unit = once {
+ done =>
+ val f = future { 0 }
+ await(0, f)
+ done()
+ }
+
+ def testAwaitFailure(): Unit = once {
+ done =>
+ val cause = new RuntimeException
+ val f = future {
+ throw cause
+ }
+ try {
+ await(0, f)
+ assert(false)
+ } catch {
+ case t =>
+ assert(t == cause)
+ done()
+ }
+ }
+
+ testAwaitSuccess()
+ testAwaitFailure()
}