summaryrefslogtreecommitdiff
path: root/test/files/jvm/actor-sync-send-timeout.scala
diff options
context:
space:
mode:
authorPhilipp Haller <hallerp@gmail.com>2011-07-07 17:32:31 +0000
committerPhilipp Haller <hallerp@gmail.com>2011-07-07 17:32:31 +0000
commit9f4e1b050f5d83521e895a9f7b69a2169ec64a8a (patch)
treed03e6e4733c18e76cff43bdacea811eea1d45db7 /test/files/jvm/actor-sync-send-timeout.scala
parent2ef447e26660842e2e941221f07f851e57098bb9 (diff)
downloadscala-9f4e1b050f5d83521e895a9f7b69a2169ec64a8a.tar.gz
scala-9f4e1b050f5d83521e895a9f7b69a2169ec64a8a.tar.bz2
scala-9f4e1b050f5d83521e895a9f7b69a2169ec64a8a.zip
Fixes SI-4759
Diffstat (limited to 'test/files/jvm/actor-sync-send-timeout.scala')
-rw-r--r--test/files/jvm/actor-sync-send-timeout.scala47
1 files changed, 47 insertions, 0 deletions
diff --git a/test/files/jvm/actor-sync-send-timeout.scala b/test/files/jvm/actor-sync-send-timeout.scala
new file mode 100644
index 0000000000..ed330900b2
--- /dev/null
+++ b/test/files/jvm/actor-sync-send-timeout.scala
@@ -0,0 +1,47 @@
+import scala.actors.Actor
+
+/* This test is a regression test for SI-4759.
+ */
+object Test {
+ val Runs = 5
+
+ def main(args: Array[String]) = {
+ var i = 0
+ while (i < Runs) {
+ i += 1
+ A1 ! 1
+ Thread.sleep(500)
+ }
+ //println("done sending to A1")
+ }
+}
+
+object A2 extends Actor {
+ this.start()
+ def act() {
+ loop {
+ react {
+ case 'stop =>
+ //println("A2 exiting")
+ exit()
+ case _ =>
+ }
+ }
+ }
+}
+
+object A1 extends Actor {
+ this.start()
+ def act() {
+ var i = 0
+ loopWhile(i < Test.Runs) {
+ i += 1
+ react {
+ case any =>
+ A2 !? (500, any)
+ if (i == Test.Runs)
+ A2 ! 'stop
+ }
+ }
+ }
+}