/**
* Test add 1 broker node
*/
ZooKeeperInfo.Broker brk = genBrokerInfo("127.0.0.1", 7676, true, "OpenMQ", false);
ZNode broker1Node = new ZNode("/broker" + "/127.0.0.1");
broker1Node.create(false, brk.toString().getBytes());
waitForUpdate(brokerFarm);
assertEquals(brk, brokerFarm.getAllBrokers().get("127.0.0.1"));
assertEquals(1, brokerFarm.getBrokerCount());
/**
* Test add another broker node
*/
ZooKeeperInfo.Broker brk2 = genBrokerInfo("127.0.0.2", 7676, true, "OpenMQ", false);
ZNode broker2Node = new ZNode("/broker" + "/127.0.0.2");
broker2Node.create(false, brk2.toString().getBytes());
waitForUpdate(brokerFarm);
assertEquals(brk2, brokerFarm.getAllBrokers().get("127.0.0.2"));
assertEquals(2, brokerFarm.getBrokerCount());
/**
* Test add loading node
*/
ZooKeeperInfo.Loading loading = genBrokerLoading(10);
ZNode loading1Node = new ZNode("/broker" + "/127.0.0.1/loading");
loading1Node.create(false, loading.toString().getBytes());
waitForUpdate(brokerFarm);
assertEquals(loading, brokerFarm.getAllLoading().get("127.0.0.1"));
/**
* Test add another loading node
*/
ZooKeeperInfo.Loading loading2 = genBrokerLoading(10);
ZNode loading2Node = new ZNode("/broker" + "/127.0.0.2/loading");
loading2Node.create(false, loading.toString().getBytes());
waitForUpdate(brokerFarm);
assertEquals(loading2, brokerFarm.getAllLoading().get("127.0.0.2"));
/**
* Test remove broker1
*/
loading1Node.delete();
waitForUpdate(brokerFarm);
broker1Node.delete();
waitForUpdate(brokerFarm);
assertNull(brokerFarm.getAllBrokers().get("127.0.0.1"));
assertNull(brokerFarm.getAllLoading().get("127.0.0.1"));
assertEquals(1, brokerFarm.getBrokerCount());
/**
* Test remove broker2
*/
loading2Node.delete();
waitForUpdate(brokerFarm);
broker2Node.delete();
waitForUpdate(brokerFarm);
assertTrue(brokerFarm.getAllBrokers().isEmpty());
assertTrue(brokerFarm.getAllLoading().isEmpty());