/** * Creates a {@link SchedulerService} from the passed in configuration file. * * @param configFile the scheduler's configuration file name * @return a {@link SchedulerService} implementation * @throws Exception */ private SchedulerService createSchedulerService(final String configFile) throws Exception { final JSONEnhancedConfig jsonEnhancedConfig = mock(JSONEnhancedConfig.class); final ClusterManagementService clusterService = mock(ClusterManagementService.class); final SchedulerService schedulerService = new SchedulerService(); when(jsonEnhancedConfig.getConfigurationAsJson(any(ComponentContext.class))) .thenReturn(getConfig(configFile)); when(clusterService.getInstanceId()).thenReturn("test-node"); // bind services schedulerService.bindEnhancedConfig(jsonEnhancedConfig); schedulerService.clusterManager = clusterService; // Activate the service schedulerService.activate(getMockedContext()); return schedulerService; }
@Test public void testReadSchedule() throws Exception { // given final ReadRequest readRequest = Requests.newReadRequest("test1"); // when Promise<ResourceResponse, ResourceException> promise = schedulerService.handleRead(new RootContext(), readRequest); // then AssertJPromiseAssert.assertThat(promise).isNotNull().succeeded(); ResourceResponse resourceResponse = promise.getOrThrow(); assertThat(resourceResponse.getContent().asMap()).isEqualTo(testScheduleConfig.asMap()); }
@Test public void testListCurrentlyExecutingJobsAction() throws Exception { // given final ActionRequest readRequest = Requests.newActionRequest("", SchedulerAction.listCurrentlyExecutingJobs.toString()); // when Promise<ActionResponse, ResourceException> promise = schedulerService.handleAction(new RootContext(), readRequest); // then AssertJPromiseAssert.assertThat(promise).isNotNull().succeeded(); ActionResponse resourceResponse = promise.getOrThrow(); assertThat(resourceResponse.getJsonContent().asList().size()).isEqualTo(0); }
@Test public void testResumeJobsAction() throws Exception { // given final ActionRequest readRequest = Requests.newActionRequest("", SchedulerAction.resumeJobs.toString()); // when Promise<ActionResponse, ResourceException> promise = schedulerService.handleAction(new RootContext(), readRequest); // then AssertJPromiseAssert.assertThat(promise).isNotNull().succeeded(); ActionResponse resourceResponse = promise.getOrThrow(); assertThat(resourceResponse.getJsonContent().get("success").getObject()) .isEqualTo(new Boolean(true)); }
public static String getSchedulesIdentity(SchedulerService service) { return "Schedules:" + service.identity().get(); }
public void init(ServletConfig config) throws ServletException { super.init(config); SchedulerService.getInstance().timerToStartProcess(); }