summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/files/jvm/scala-concurrent-tck-akka.scala28
-rw-r--r--test/files/jvm/scala-concurrent-tck.scala1
2 files changed, 25 insertions, 4 deletions
diff --git a/test/files/jvm/scala-concurrent-tck-akka.scala b/test/files/jvm/scala-concurrent-tck-akka.scala
index 1ef248bda3..dfd906e59e 100644
--- a/test/files/jvm/scala-concurrent-tck-akka.scala
+++ b/test/files/jvm/scala-concurrent-tck-akka.scala
@@ -188,15 +188,37 @@ trait FutureCombinators extends TestBase {
done()
}
- // recover: stub
def testRecoverSuccess(): Unit = once {
done =>
- done()
+ val cause = new RuntimeException
+ val f = future {
+ throw cause
+ } recover {
+ case re: RuntimeException =>
+ "recovered"
+ } onSuccess { case x =>
+ done()
+ assert(x == "recovered")
+ } onFailure { case any =>
+ done()
+ assert(false)
+ }
}
def testRecoverFailure(): Unit = once {
done =>
- done()
+ val cause = new RuntimeException
+ val f = future {
+ throw cause
+ } recover {
+ case te: TimeoutException => "timeout"
+ } onSuccess { case x =>
+ done()
+ assert(false)
+ } onFailure { case any =>
+ done()
+ assert(any == cause)
+ }
}
testMapSuccess()
diff --git a/test/files/jvm/scala-concurrent-tck.scala b/test/files/jvm/scala-concurrent-tck.scala
index bf3fa57da9..4261638e1f 100644
--- a/test/files/jvm/scala-concurrent-tck.scala
+++ b/test/files/jvm/scala-concurrent-tck.scala
@@ -186,7 +186,6 @@ trait FutureCombinators extends TestBase {
done()
}
- // recover: stub
def testRecoverSuccess(): Unit = once {
done =>
val cause = new RuntimeException