@Override public boolean apply(SlotStatus slotStatus) { return slotStatus.getState() == state; } }
public AgentStatus changeSlotStatus(SlotStatus slotStatus) { Map<UUID, SlotStatus> slots = newHashMap(this.slots); if (slotStatus.getState() != TERMINATED) { slots.put(slotStatus.getId(), slotStatus); } else { slots.remove(slotStatus.getId()); } return new AgentStatus(agentId, state, instanceId, internalUri, externalUri, location, instanceType, slots.values(), resources); }
@Override public SlotStatus apply(RemoteSlot slot) { SlotStatus slotStatus = slot.terminate(); if (slotStatus.getState() == TERMINATED) { stateManager.deleteExpectedState(slotStatus.getId()); } return slotStatus; } });
@Override public SlotStatus apply(SlotStatus slotStatus) { if (slotStatus.getState() != SlotLifecycleState.UNKNOWN) { stateManager.setExpectedState(new ExpectedSlotStatus(slotStatus.getId(), slotStatus.getState(), slotStatus.getAssignment())); } else { stateManager.deleteExpectedState(slotStatus.getId()); } return slotStatus; } }));
private void assertAppleSlot(SlotStatus slot) { assertEquals(slot.getAssignment(), RESOLVED_APPLE_ASSIGNMENT); assertEquals(slot.getState(), STOPPED); assertEquals(slot.getResources(), ImmutableMap.of("cpu", 1, "memory", 512)); } }
private void assertAppleSlot(SlotStatus slot) { assertEquals(slot.getAssignment(), RESOLVED_APPLE_ASSIGNMENT); assertEquals(slot.getState(), STOPPED); assertEquals(slot.getResources(), ImmutableMap.of("cpu", 1, "memory", 512)); } }
@Test public void testAssignNoVersions() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); assertEquals(slotStatus.getState(), STOPPED); assertUpgrade(slotStatus, null, null); }
@Test public void testAssignNoVersions() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); assertEquals(slotStatus.getState(), STOPPED); assertUpgrade(slotStatus, null, null); }
private void assertAppleSlot(SlotStatusRepresentation slotRepresentation) { SlotStatus slot = slotRepresentation.toSlotStatus("instance"); assertEquals(slot.getAssignment(), APPLE_ASSIGNMENT); assertEquals(slot.getState(), STOPPED); assertEquals(slot.getResources(), ImmutableMap.of("cpu", 1, "memory", 512)); } }
private void assertAppleSlot(SlotStatusRepresentation slotRepresentation) { SlotStatus slot = slotRepresentation.toSlotStatus("instance"); assertEquals(slot.getAssignment(), APPLE_ASSIGNMENT); assertEquals(slot.getState(), STOPPED); assertEquals(slot.getResources(), ImmutableMap.of("cpu", 1, "memory", 512)); } }
private void assertSlotState(UUID slotId, SlotLifecycleState state) { assertEquals(coordinator.getAgentByAgentId(agentId).getSlotStatus(slotId).getState(), state); } }
@Override public SlotStatus terminate() { if (slotStatus.getState() == STOPPED) { slotStatus = slotStatus.changeState(TERMINATED); } mockRemoteAgent.setSlotStatus(slotStatus); return slotStatus; }
@Test public void testAssignNoAgentVersion() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); assertEquals(slotStatus.getState(), STOPPED); assertUpgrade(slotStatus, null, slotStatus.getVersion()); }
@Test public void testAssignNoAgentVersion() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); assertEquals(slotStatus.getState(), STOPPED); assertUpgrade(slotStatus, null, slotStatus.getVersion()); }
@Override public SlotStatus terminate() { if (slotStatus.getState() == STOPPED) { slotStatus = slotStatus.changeState(TERMINATED); } mockRemoteAgent.setSlotStatus(slotStatus); return slotStatus; }
private void assertUpgrade(SlotStatus slotStatus, String agentVersion, String slotVersion) { Response response = resource.assign(agentVersion, slotVersion, slotStatus.getId(), UPGRADE); assertEquals(response.getStatus(), Status.OK.getStatusCode()); SlotStatusRepresentation actualStatus = (SlotStatusRepresentation) response.getEntity(); SlotStatus expectedStatus = slotStatus.changeAssignment(slotStatus.getState(), APPLE_V2, slotStatus.getResources()); assertEquals(actualStatus, SlotStatusRepresentation.from(expectedStatus)); assertEquals(actualStatus.toSlotStatus(null), expectedStatus); assertEquals(response.getMetadata().get(AIRSHIP_AGENT_VERSION_HEADER).get(0), agent.getAgentStatus().getVersion()); assertEquals(response.getMetadata().get(AIRSHIP_SLOT_VERSION_HEADER).get(0), expectedStatus.getVersion()); assertNull(response.getMetadata().get("Content-Type")); // content type is set by jersey based on @Produces } }
@Test public void testAssignNoSlotVersion() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); assertEquals(slotStatus.getState(), STOPPED); assertUpgrade(slotStatus, agent.getAgentStatus().getVersion(), null); }
@Test public void testAssignNoSlotVersion() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); assertEquals(slotStatus.getState(), STOPPED); assertUpgrade(slotStatus, agent.getAgentStatus().getVersion(), null); }
@Test public void testAssignRestarts() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); slotStatus = agent.getSlot(slotStatus.getId()).start(); assertEquals(slotStatus.getState(), RUNNING); assertUpgrade(slotStatus, agent.getAgentStatus().getVersion(), slotStatus.getVersion()); }
@Test public void testAssignRestarts() { SlotStatus slotStatus = agent.install(APPLE_INSTALLATION); slotStatus = agent.getSlot(slotStatus.getId()).start(); assertEquals(slotStatus.getState(), RUNNING); assertUpgrade(slotStatus, agent.getAgentStatus().getVersion(), slotStatus.getVersion()); }