JobNodeStorage { public void removeJobNodeIfExisted(final String node) { if (isJobNodeExisted(node)) { regCenter.remove(jobNodePath.getFullPath(node)); } } JobNodeStorage(final CoordinatorRegistryCenter regCenter, final String jobName); boolean isJobNodeExisted(final String node); boolean isJobRootNodeExisted(); String getJobNodeData(final String node); String getJobNodeDataDirectly(final String node); List<String> getJobNodeChildrenKeys(final String node); String getJobRootNodeData(); void createJobNodeIfNeeded(final String node); void removeJobNodeIfExisted(final String node); void fillJobNode(final String node, final Object value); void fillEphemeralJobNode(final String node, final Object value); void updateJobNode(final String node, final Object value); void replaceJobNode(final String node, final Object value); void replaceJobRootNode(final Object value); void executeInTransaction(final TransactionExecutionCallback callback); void executeInLeader(final String latchNode, final LeaderExecutionCallback callback); void addConnectionStateListener(final ConnectionStateListener listener); void addDataListener(final CuratorCacheListener listener); long getRegistryCenterTime();  }
@Test public void assertRemoveJobNodeIfNeeded() { when(regCenter.isExisted("/test_job/config")).thenReturn(true); jobNodeStorage.removeJobNodeIfExisted("config"); verify(regCenter).isExisted("/test_job/config"); verify(regCenter).remove("/test_job/config"); }
@Test public void assertRemoveJobNodeIfNotNeeded() { when(regCenter.isExisted("/test_job/config")).thenReturn(false); jobNodeStorage.removeJobNodeIfExisted("config"); verify(regCenter).isExisted("/test_job/config"); verify(regCenter, times(0)).remove("/test_job/config"); }