summaryrefslogtreecommitdiff
path: root/test/files/jvm/actmig-hierarchy_1.scala
diff options
context:
space:
mode:
authorVojin Jovanovic <vojin.jovanovic@epfl.ch>2012-09-24 17:06:08 +0200
committerVojin Jovanovic <vojin.jovanovic@epfl.ch>2012-09-25 11:14:46 +0200
commit3ba88113f23a1cd614366d770cb22fd2c6336771 (patch)
treef1bfb46d34f3538ffdc1f5b567b33e889febfd96 /test/files/jvm/actmig-hierarchy_1.scala
parentb92becd757d8319129fa8bd0a93af8c6fd2b23b7 (diff)
downloadscala-3ba88113f23a1cd614366d770cb22fd2c6336771.tar.gz
scala-3ba88113f23a1cd614366d770cb22fd2c6336771.tar.bz2
scala-3ba88113f23a1cd614366d770cb22fd2c6336771.zip
Additional Actor Migration Tests.
Review by @phaller.
Diffstat (limited to 'test/files/jvm/actmig-hierarchy_1.scala')
-rw-r--r--test/files/jvm/actmig-hierarchy_1.scala45
1 files changed, 45 insertions, 0 deletions
diff --git a/test/files/jvm/actmig-hierarchy_1.scala b/test/files/jvm/actmig-hierarchy_1.scala
new file mode 100644
index 0000000000..14f03c9d48
--- /dev/null
+++ b/test/files/jvm/actmig-hierarchy_1.scala
@@ -0,0 +1,45 @@
+/**
+ * NOTE: Code snippets from this test are included in the Actor Migration Guide. In case you change
+ * code in these tests prior to the 2.10.0 release please send the notification to @vjovanov.
+ */
+import scala.actors._
+
+class ReactorActor extends Actor {
+ def act() {
+ var cond = true
+ loopWhile(cond) {
+ react {
+ case x: String if x == "hello1" => println("hello")
+ case "exit" => cond = false
+ }
+ }
+ }
+}
+
+class ReplyActor extends Actor {
+ def act() {
+ var cond = true
+ loopWhile(cond) {
+ react {
+ case "hello" => println("hello")
+ case "exit" => cond = false;
+ }
+ }
+ }
+}
+
+object Test {
+
+ def main(args: Array[String]) {
+ val reactorActor = new ReactorActor
+ val replyActor = new ReplyActor
+ reactorActor.start()
+ replyActor.start()
+
+ reactorActor ! "hello1"
+ replyActor ! "hello"
+
+ reactorActor ! "exit"
+ replyActor ! "exit"
+ }
+} \ No newline at end of file