assertEquals(1, assertingTopologyEventListener.getRemainingExpectedCount());
instance1.bindTopologyEventListener(assertingTopologyEventListener);
assertEquals(0, assertingTopologyEventListener.getRemainingExpectedCount());
// startup instance 3
AcceptsMultiple acceptsMultiple = new AcceptsMultiple(
Type.TOPOLOGY_CHANGING, Type.TOPOLOGY_CHANGED);
assertingTopologyEventListener.addExpected(acceptsMultiple);
assertingTopologyEventListener.addExpected(acceptsMultiple);
instance3 = Instance.newClusterInstance("thirdInstance", instance1,
false);
instance1.runHeartbeatOnce();
instance2.runHeartbeatOnce();
instance3.runHeartbeatOnce();
logger.info("testAdditionalInstance: 3rd 2s sleep");
Thread.sleep(2000);
instance1.runHeartbeatOnce();
instance2.runHeartbeatOnce();
instance3.runHeartbeatOnce();
logger.info("testAdditionalInstance: 4th 2s sleep");
Thread.sleep(2000);
assertEquals(1, acceptsMultiple.getEventCnt(Type.TOPOLOGY_CHANGING));
assertEquals(1, acceptsMultiple.getEventCnt(Type.TOPOLOGY_CHANGED));
logger.info("testAdditionalInstance: end");
}