### Question:
FailoverWatcher implements Watcher { protected void initZnode() { try { ZooKeeperUtil.createAndFailSilent(this, baseZnode); ZooKeeperUtil.createAndFailSilent(this, backupServersZnode); } catch (Exception e) { LOG.fatal("Error to create znode " + baseZnode + " and " + backupServersZnode + ", exit immediately", e); System.exit(0); } } FailoverWatcher(Properties properties, boolean canInitZnode);  FailoverWatcher(Properties properties); @Override void process(WatchedEvent event); boolean blockUntilActive(); void close(); void waitToInitZooKeeper(long maxWaitMillis); String getBaseZnode(); String getMasterZnode(); String getBackupServersZnode(); ZooKeeper getZooKeeper(); boolean hasActiveServer(); HostPort getHostPort(); Properties getProperties(); boolean isZkSecure(); String getZkAdmin();  }### Answer:
@Test public void testInitZnode() throws IOException, KeeperException { FailoverWatcher failoverWatcher = createFailoverWatcher(new HostPort("127.0.0.1", 10086)); assertTrue(ZooKeeperUtil.watchAndCheckExists(failoverWatcher, failoverWatcher.getBaseZnode())); assertTrue(ZooKeeperUtil.watchAndCheckExists(failoverWatcher, failoverWatcher.getBackupServersZnode())); failoverWatcher.close(); }