@Test public void testPutDockerPlacementZoneWithTagsShouldPass() throws Throwable { // First create a docker placement zone. ResourcePoolState createdPlacementZone = createPlacementZone("docker-placement-zone", false); assertNotNull(createdPlacementZone); // Now update the created state with tags and PUT it. This should pass addTags(createdPlacementZone); ResourcePoolState putState = doPut(createdPlacementZone); assertNotNull(putState); }
@Test public void testPutSchedulerPlacementZoneWithTagsShouldFail() throws Throwable { // First create a scheduler placement zone. ResourcePoolState createdPlacementZone = createPlacementZone("scheduler-placement-zone", true); assertNotNull(createdPlacementZone); // Now update the created state with tags and PUT it. This should fail addTags(createdPlacementZone); try { doPut(createdPlacementZone); Assert.fail("PUT should fail for scheduler placement zone with tags"); } catch (Exception ex) { verifyExceptionMessage(ex, TAG_LINKS_MUST_BE_EMPTY_MESSAGE); } }
@Test public void testPutSchedulerPZInUseToDockerPZShouldFail() throws Throwable { // First create a docker placement zone. ResourcePoolState createdPlacementZone = createPlacementZone("scheduler-placement-zone", true); assertNotNull(createdPlacementZone); // Now create a compute state that uses this placement zone createComputeState(createdPlacementZone, true); // Now update the type of the zone to docker and issue a PUT. This should fail markDockerPlacementZone(createdPlacementZone); try { doPut(createdPlacementZone); Assert.fail( "PUT should fail to update the type of a used " + "scheduler placement zone to a docker zone"); } catch (Exception ex) { verifyExceptionMessage(ex, SchedulerPlacementZoneInterceptor.SCHEDULER_HOSTS_IN_PLACEMENT_ZONE_MESSAGE); } }
@Test public void testPutDockerPZInUseToSchedulerPZShouldFail() throws Throwable { // First create a docker placement zone. ResourcePoolState createdPlacementZone = createPlacementZone("docker-placement-zone", false); assertNotNull(createdPlacementZone); // Now create a compute state that uses this placement zone createComputeState(createdPlacementZone); // Now update the type of the zone to scheduler and issue a PUT. This should fail markSchedulerPlacementZone(createdPlacementZone); try { doPut(createdPlacementZone); Assert.fail( "PUT should fail to update the type of a used " + "docker placement zone to a scheduler zone"); } catch (Exception ex) { verifyExceptionMessage(ex, SchedulerPlacementZoneInterceptor.NON_SCHEDULER_HOST_IN_PLACEMENT_ZONE_MESSAGE); } }