@Test public void testAcceptOffersWithRoleForRequestWithRole() { SingularityRequestBuilder bldr = new SingularityRequestBuilder(requestId, RequestType.ON_DEMAND); bldr.setRequiredRole(Optional.of("test-role")); requestResource.postRequest(bldr.build(), singularityUser); deploy("d2"); SingularityRunNowRequest runNowRequest = new SingularityRunNowRequestBuilder() .setResources(new Resources(2, 2, 0)) .build(); requestResource.scheduleImmediately(singularityUser, requestId, runNowRequest); scheduler.drainPendingQueue(); SingularityPendingTask pendingTaskWithResources = taskManager.getPendingTasks().get(0); Assert.assertTrue(pendingTaskWithResources.getResources().isPresent()); Assert.assertEquals(pendingTaskWithResources.getResources().get().getCpus(), 2, 0.0); sms.resourceOffers(Arrays.asList(createOffer(5, 5, 5))); pendingTaskWithResources = taskManager.getPendingTasks().get(0); Assert.assertTrue(pendingTaskWithResources.getResources().isPresent()); Assert.assertEquals(pendingTaskWithResources.getResources().get().getCpus(), 2, 0.0); sms.resourceOffers(Arrays.asList(createOffer(5, 5, 5, Optional.of("test-role")))); SingularityTask task = taskManager.getActiveTasks().get(0); Assert.assertEquals(MesosUtils.getNumCpus(mesosProtosUtils.toResourceList(task.getMesosTask().getResources()), Optional.of("test-role")), 2.0, 0.0); }
.setSlaveAttributeMinimums(slaveAttributeMinimums) .setScheduledExpectedRuntimeMillis(scheduledExpectedRuntimeMillis) .setRequiredRole(requiredRole) .setGroup(group) .setReadWriteGroups(readWriteGroups)
@Test public void testAcceptOffersWithRoleForRequestWithRole() { SingularityRequestBuilder bldr = new SingularityRequestBuilder(requestId, RequestType.ON_DEMAND); bldr.setRequiredRole(Optional.of("test-role")); requestResource.postRequest(bldr.build(), singularityUser); deploy("d2"); SingularityRunNowRequest runNowRequest = new SingularityRunNowRequestBuilder() .setResources(new Resources(2, 2, 0)) .build(); requestResource.scheduleImmediately(singularityUser, requestId, runNowRequest); scheduler.drainPendingQueue(); SingularityPendingTask pendingTaskWithResources = taskManager.getPendingTasks().get(0); Assert.assertTrue(pendingTaskWithResources.getResources().isPresent()); Assert.assertEquals(pendingTaskWithResources.getResources().get().getCpus(), 2, 0.0); sms.resourceOffers(Arrays.asList(createOffer(5, 5, 5))); pendingTaskWithResources = taskManager.getPendingTasks().get(0); Assert.assertTrue(pendingTaskWithResources.getResources().isPresent()); Assert.assertEquals(pendingTaskWithResources.getResources().get().getCpus(), 2, 0.0); sms.resourceOffers(Arrays.asList(createOffer(5, 5, 5, Optional.of("test-role")))); SingularityTask task = taskManager.getActiveTasks().get(0); Assert.assertEquals(MesosUtils.getNumCpus(mesosProtosUtils.toResourceList(task.getMesosTask().getResources()), Optional.of("test-role")), 2.0, 0.0); }