public void RemoteRouter_must_let_remote_deployment_be_overridden_by_remote_configuration()
{
var probe = CreateTestProbe(masterActorSystem);
var router = masterActorSystem.ActorOf(new RoundRobinPool(2).Props(Props.Create<Echo>())
.WithDeploy(
new Deploy(new RemoteScope(intendedRemoteAddress))), "remote-override");
router.Path.Address.ShouldBe(intendedRemoteAddress);
var replies = new HashSet<ActorPath>();
for (var i = 0; i < 5; i++)
{
router.Tell("", probe.Ref);
var expected = probe.ExpectMsg<IActorRef>(GetTimeoutOrDefault(null));
replies.Add(expected.Path);
}
Assert.Equal(4, replies.Count);
var parents = replies.Select(x => x.Parent).Distinct().ToList();
parents.Count.ShouldBe(1);
parents.Head().Address.ShouldBe(new Address("akka.tcp", sysName, "127.0.0.1", port));
Assert.True(replies.All(x => x.Address.Equals(intendedRemoteAddress)));
masterActorSystem.Stop(router);
}