summaryrefslogtreecommitdiff
path: root/test/disabled/jvm
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2010-04-12 21:45:17 +0000
committerPaul Phillips <paulp@improving.org>2010-04-12 21:45:17 +0000
commit9e155f4956ad608342eb760c6939ebd9aa1a51a8 (patch)
tree199009fe071c8ec65215b31b77b40e9a2f8c4494 /test/disabled/jvm
parent7015c96b21d4d5ae7f5bdd9f921bbf0aeef9856c (diff)
downloadscala-9e155f4956ad608342eb760c6939ebd9aa1a51a8.tar.gz
scala-9e155f4956ad608342eb760c6939ebd9aa1a51a8.tar.bz2
scala-9e155f4956ad608342eb760c6939ebd9aa1a51a8.zip
Disabling what I think are the last two failing...
Disabling what I think are the last two failing tests, one each of the two leading bugs among those we've seen here today on testing theater: "could not find toMap: (x$1: scala.collection.TraversableOnce,x$2: Predef$<:<)" and "scala.tools.nsc.symtab.Types$TypeError: method react cannot be accessed in java.lang.Object with scala.actors.Reactor[Any] No review but hey lets' see if we can re-enable these tests soonish.
Diffstat (limited to 'test/disabled/jvm')
-rw-r--r--test/disabled/jvm/actor-getstate.check2
-rw-r--r--test/disabled/jvm/actor-getstate.scala85
2 files changed, 87 insertions, 0 deletions
diff --git a/test/disabled/jvm/actor-getstate.check b/test/disabled/jvm/actor-getstate.check
new file mode 100644
index 0000000000..2c94e48371
--- /dev/null
+++ b/test/disabled/jvm/actor-getstate.check
@@ -0,0 +1,2 @@
+OK
+OK
diff --git a/test/disabled/jvm/actor-getstate.scala b/test/disabled/jvm/actor-getstate.scala
new file mode 100644
index 0000000000..a6e15a8721
--- /dev/null
+++ b/test/disabled/jvm/actor-getstate.scala
@@ -0,0 +1,85 @@
+import scala.actors.{Reactor, Actor, TIMEOUT}
+import Actor._
+
+object Test {
+
+ def assert(cond: => Boolean, hint: String) {
+ if (!cond)
+ println("FAIL ["+hint+"]")
+ }
+
+ def expectActorState(a: Reactor[T] forSome { type T }, s: Actor.State.Value) {
+ var done = false
+ var i = 0
+ while (!done) {
+ i = i + 1
+ if (i == 10) { // only wait for 2 seconds total
+ println("FAIL ["+a+": expected "+s+"]")
+ done = true
+ }
+
+ Thread.sleep(200)
+ if (a.getState == s) // success
+ done = true
+ }
+ }
+
+ def main(args: Array[String]) {
+ actor {
+ val a = new Reactor[Any] {
+ def act() {
+ assert(getState == Actor.State.Runnable, "runnable1")
+ react {
+ case 'go =>
+ println("OK")
+ }
+ }
+ }
+ expectActorState(a, Actor.State.New)
+
+ a.start()
+ expectActorState(a, Actor.State.Suspended)
+
+ a ! 'go
+ expectActorState(a, Actor.State.Terminated)
+
+ val b = new Actor {
+ def act() {
+ assert(getState == Actor.State.Runnable, "runnable2: "+getState)
+ react {
+ case 'go =>
+ reactWithin(100000) {
+ case TIMEOUT =>
+ case 'go =>
+ receive {
+ case 'go =>
+ }
+ receiveWithin(100000) {
+ case TIMEOUT =>
+ case 'go =>
+ println("OK")
+ }
+ }
+ }
+ }
+ }
+ expectActorState(b, Actor.State.New)
+
+ b.start()
+ expectActorState(b, Actor.State.Suspended)
+
+ b ! 'go
+ expectActorState(b, Actor.State.TimedSuspended)
+
+ b ! 'go
+ expectActorState(b, Actor.State.Blocked)
+
+ b ! 'go
+ expectActorState(b, Actor.State.TimedBlocked)
+
+ b ! 'go
+ expectActorState(b, Actor.State.Terminated)
+ }
+ }
+
+}