summaryrefslogtreecommitdiff
path: root/test/files/jvm/actor-link-getstate.scala
diff options
context:
space:
mode:
authorPhilipp Haller <hallerp@gmail.com>2010-04-13 14:41:02 +0000
committerPhilipp Haller <hallerp@gmail.com>2010-04-13 14:41:02 +0000
commitbc791369f79f2d1a72a93674eb7b0f34ca58d8d1 (patch)
treea29f5941272cbe318f67f446d8202156da0ecf06 /test/files/jvm/actor-link-getstate.scala
parentc54b7a99e8a4913ceee3f40631edba72c33145ec (diff)
downloadscala-bc791369f79f2d1a72a93674eb7b0f34ca58d8d1.tar.gz
scala-bc791369f79f2d1a72a93674eb7b0f34ca58d8d1.tar.bz2
scala-bc791369f79f2d1a72a93674eb7b0f34ca58d8d1.zip
Hardened actor tests. No review.
Diffstat (limited to 'test/files/jvm/actor-link-getstate.scala')
-rw-r--r--test/files/jvm/actor-link-getstate.scala15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/files/jvm/actor-link-getstate.scala b/test/files/jvm/actor-link-getstate.scala
index ec01757883..c4c33ef752 100644
--- a/test/files/jvm/actor-link-getstate.scala
+++ b/test/files/jvm/actor-link-getstate.scala
@@ -7,6 +7,7 @@ case class MyException(text: String) extends Exception(text) {
object Slave extends Actor {
def act() {
+ try {
loop {
react {
case 'doWork =>
@@ -14,18 +15,27 @@ object Slave extends Actor {
reply('done)
}
}
+ } catch {
+ case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
+ e.printStackTrace()
+ }
}
}
object Master extends Actor {
override def toString = "Master"
def act() {
+ try {
link(Slave)
Slave ! 'doWork
react {
case 'done =>
throw new MyException("Master crashed")
}
+ } catch {
+ case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
+ e.printStackTrace()
+ }
}
}
@@ -33,6 +43,7 @@ object Test {
def main(args: Array[String]) {
actor {
+ try {
self.trapExit = true
link(Slave)
Slave.start()
@@ -41,6 +52,10 @@ object Test {
case Exit(from, reason) if (from == Slave) =>
Console.err.println(Slave.getState)
}
+ } catch {
+ case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
+ e.printStackTrace()
+ }
}
}