Added multi-jvm test for remote actor configured with Direct router.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
This commit is contained in:
Jonas Bonér 2011-10-05 18:45:26 +02:00
parent d124f6e781
commit 9e580b09e3
5 changed files with 71 additions and 0 deletions

View file

@ -0,0 +1,5 @@
akka.enabled-modules = ["remote"]
akka.event-handler-level = "WARNING"
akka.actor.deployment.service-hello.router = "direct"
akka.actor.deployment.service-hello.nr-of-instances = 1
akka.actor.deployment.service-hello.remote.nodes = ["localhost:9991"]

View file

@ -0,0 +1 @@
-Dakka.cluster.nodename=node1 -Dakka.remote.hostname=localhost -Dakka.remote.port=9991

View file

@ -0,0 +1,5 @@
akka.enabled-modules = ["remote"]
akka.event-handler-level = "WARNING"
akka.actor.deployment.service-hello.router = "direct"
akka.actor.deployment.service-hello.nr-of-instances = 1
akka.actor.deployment.service-hello.remote.nodes = ["localhost:9991"]

View file

@ -0,0 +1 @@
-Dakka.cluster.nodename=node2 -Dakka.remote.hostname=localhost -Dakka.remote.port=9992

View file

@ -0,0 +1,59 @@
package akka.remote.direct_routed
import akka.remote._
import akka.routing._
import akka.actor.Actor
import akka.config.Config
object DirectRoutedRemoteActorMultiJvmSpec {
val NrOfNodes = 2
class SomeActor extends Actor with Serializable {
def receive = {
case "identify" {
reply(Config.nodename)
}
}
}
}
class DirectRoutedRemoteActorMultiJvmNode1 extends MultiJvmSync {
import DirectRoutedRemoteActorMultiJvmSpec._
val nodes = NrOfNodes
"___" must {
"___" in {
barrier("setup")
Remote.start()
barrier("start")
barrier("done")
}
}
}
class DirectRoutedRemoteActorMultiJvmNode2 extends MultiJvmSync {
import DirectRoutedRemoteActorMultiJvmSpec._
val nodes = NrOfNodes
"A new remote actor configured with a Direct router" must {
"be locally instantiated on a remote node and be able to communicate through its RemoteActorRef" in {
barrier("setup")
Remote.start()
barrier("start")
val actor = Actor.actorOf[SomeActor]("service-hello")
actor.isInstanceOf[RoutedActorRef] must be(true)
val result = (actor ? "identify").get
result must equal("node1")
barrier("done")
}
}
}