X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fbehaviors%2FAbstractLeaderElectionScenarioTest.java;h=13fd698cd9d7d07a117a0ecf45804fe22208225d;hb=aa9c756831b5392e1dec18a93b86cf9c28b73e8f;hp=50f0c7b6af0b7d133e862430a9287777910fc8b1;hpb=a54ec60368110d22794602343c934902f6833c65;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/behaviors/AbstractLeaderElectionScenarioTest.java b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/behaviors/AbstractLeaderElectionScenarioTest.java index 50f0c7b6af..13fd698cd9 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/behaviors/AbstractLeaderElectionScenarioTest.java +++ b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/behaviors/AbstractLeaderElectionScenarioTest.java @@ -132,9 +132,9 @@ public class AbstractLeaderElectionScenarioTest { } T getCapturedMessage(Class msgClass) throws Exception { - Object message = getFirstMatching(getSelf(), msgClass); + T message = getFirstMatching(getSelf(), msgClass); assertNotNull("Message of type " + msgClass + " not received", message); - return (T) message; + return message; } } @@ -162,7 +162,18 @@ public class AbstractLeaderElectionScenarioTest { } @After - public void tearDown() { + public void tearDown() throws Exception { + + if (member1Actor.behavior != null) { + member1Actor.behavior.close(); + } + if (member2Actor.behavior != null) { + member2Actor.behavior.close(); + } + if (member3Actor.behavior != null) { + member3Actor.behavior.close(); + } + JavaTestKit.shutdownActorSystem(system); } @@ -186,17 +197,20 @@ public class AbstractLeaderElectionScenarioTest { assertEquals(name + " behavior state", expState, actor.behavior.state()); } - void initializeLeaderBehavior(MemberActor actor, RaftActorContext context, - int numActiveFollowers) throws Exception { + void initializeLeaderBehavior(MemberActor actor, RaftActorContext context, int numActiveFollowers) throws Exception { // Leader sends immediate heartbeats - we don't care about it so ignore it. actor.expectMessageClass(AppendEntriesReply.class, numActiveFollowers); + + @SuppressWarnings("resource") Leader leader = new Leader(context); actor.waitForExpectedMessages(AppendEntriesReply.class); + // Delay assignment here so the AppendEntriesReply isn't forwarded to the behavior. actor.behavior = leader; actor.forwardCapturedMessagesToBehavior(AppendEntriesReply.class, ActorRef.noSender()); actor.clear(); + } TestActorRef newMemberActor(String name) throws Exception {