public void A_cluster_of_3_members_must_not_move_a_new_joining_node_to_up_while_there_is_no_convergence()
{
RunOn(() => Cluster.Join(GetAddress(_config.First)), _config.Fourth);
EnterBarrier("after-join");
RunOn(() =>
{
for (var i = 0; i < 5; i++)
{
AwaitAssert(() => ClusterView.Members.Count.ShouldBe(3));
AwaitSeenSameState(GetAddress(_config.First), GetAddress(_config.Second), GetAddress(_config.Fourth));
MemberStatus(GetAddress(_config.First)).ShouldBe(Akka.Cluster.MemberStatus.Up);
MemberStatus(GetAddress(_config.Second)).ShouldBe(Akka.Cluster.MemberStatus.Up);
Assert.True(MemberStatus(GetAddress(_config.Fourth)) == null);
// wait and then check again
//TODO: Dilation?
Thread.Sleep(TimeSpan.FromSeconds(1));
}
}, _config.First, _config.Second, _config.Fourth);
EnterBarrier("after-3");
}