public void testGetManagementPlaneStatus() throws Exception { // with the name zzzzz the mgr created here should never be promoted by the alphabetical // strategy! tickerAdvance(Duration.FIVE_SECONDS); persister.delta( ManagementPlaneSyncRecordDeltaImpl.builder() .node( newManagerMemento( "zzzzzzz_node1", ManagementNodeState.STANDBY, tickerCurrentMillis())) .build()); long zzzTime = tickerCurrentMillis(); tickerAdvance(Duration.FIVE_SECONDS); manager.start(HighAvailabilityMode.AUTO); ManagementPlaneSyncRecord memento = manager.getManagementPlaneSyncState(); // Note can assert timestamp because not "real" time; it's using our own Ticker assertEquals(memento.getMasterNodeId(), ownNodeId); assertEquals( memento.getManagementNodes().keySet(), ImmutableSet.of(ownNodeId, "zzzzzzz_node1")); assertEquals(memento.getManagementNodes().get(ownNodeId).getNodeId(), ownNodeId); assertEquals( memento.getManagementNodes().get(ownNodeId).getStatus(), ManagementNodeState.MASTER); assertEquals( memento.getManagementNodes().get(ownNodeId).getTimestampUtc(), tickerCurrentMillis()); assertEquals(memento.getManagementNodes().get("zzzzzzz_node1").getNodeId(), "zzzzzzz_node1"); assertEquals( memento.getManagementNodes().get("zzzzzzz_node1").getStatus(), ManagementNodeState.STANDBY); assertEquals(memento.getManagementNodes().get("zzzzzzz_node1").getTimestampUtc(), zzzTime); }