Search in sources :

Example 11 with RemoveMemberMessage

use of org.apache.geode.distributed.internal.membership.gms.messages.RemoveMemberMessage in project geode by apache.

the class GMSJoinLeaveJUnitTest method testDuplicateRemoveRequestDoesNotCauseNewView.

@Test
public void testDuplicateRemoveRequestDoesNotCauseNewView() throws Exception {
    String reason = "testing";
    initMocks();
    prepareAndInstallView(gmsJoinLeaveMemberId, createMemberList(gmsJoinLeaveMemberId, mockMembers[0]));
    gmsJoinLeave.getView().add(mockMembers[1]);
    gmsJoinLeave.unitTesting.add("noRandomViewChange");
    GMSJoinLeaveTestHelper.becomeCoordinatorForTest(gmsJoinLeave);
    RemoveMemberMessage msg = new RemoveMemberMessage(gmsJoinLeave.getMemberID(), mockMembers[0], reason);
    msg.setSender(mockMembers[0]);
    gmsJoinLeave.processMessage(msg);
    msg = new RemoveMemberMessage(gmsJoinLeave.getMemberID(), mockMembers[0], reason);
    msg.setSender(mockMembers[0]);
    gmsJoinLeave.processMessage(msg);
    waitForViewAndNoRequestsInProgress(7);
    NetView view = gmsJoinLeave.getView();
    assertTrue("expected member to be removed: " + mockMembers[0] + "; view: " + view, !view.contains(mockMembers[0]));
    assertTrue("expected member to be in crashedMembers collection: " + mockMembers[0] + "; view: " + view, view.getCrashedMembers().contains(mockMembers[0]));
}
Also used : RemoveMemberMessage(org.apache.geode.distributed.internal.membership.gms.messages.RemoveMemberMessage) NetView(org.apache.geode.distributed.internal.membership.NetView) Test(org.junit.Test) MembershipTest(org.apache.geode.test.junit.categories.MembershipTest) IntegrationTest(org.apache.geode.test.junit.categories.IntegrationTest)

Aggregations

RemoveMemberMessage (org.apache.geode.distributed.internal.membership.gms.messages.RemoveMemberMessage)11 IntegrationTest (org.apache.geode.test.junit.categories.IntegrationTest)7 MembershipTest (org.apache.geode.test.junit.categories.MembershipTest)7 Test (org.junit.Test)7 InternalDistributedMember (org.apache.geode.distributed.internal.membership.InternalDistributedMember)5 NetView (org.apache.geode.distributed.internal.membership.NetView)3 NetworkPartitionMessage (org.apache.geode.distributed.internal.membership.gms.messages.NetworkPartitionMessage)2 Timeout (org.mockito.verification.Timeout)2 HashSet (java.util.HashSet)1 DistributionMessage (org.apache.geode.distributed.internal.DistributionMessage)1 GMSMember (org.apache.geode.distributed.internal.membership.gms.GMSMember)1 JoinRequestMessage (org.apache.geode.distributed.internal.membership.gms.messages.JoinRequestMessage)1 LeaveRequestMessage (org.apache.geode.distributed.internal.membership.gms.messages.LeaveRequestMessage)1 Times (org.mockito.internal.verification.Times)1