diff options
Diffstat (limited to 'vid-app-common/src/test/java/org/onap/vid/job/impl/JobSchedulerInitializerTest.java')
-rw-r--r-- | vid-app-common/src/test/java/org/onap/vid/job/impl/JobSchedulerInitializerTest.java | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/vid-app-common/src/test/java/org/onap/vid/job/impl/JobSchedulerInitializerTest.java b/vid-app-common/src/test/java/org/onap/vid/job/impl/JobSchedulerInitializerTest.java deleted file mode 100644 index 93afd1709..000000000 --- a/vid-app-common/src/test/java/org/onap/vid/job/impl/JobSchedulerInitializerTest.java +++ /dev/null @@ -1,121 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * VID - * ================================================================================ - * Copyright (C) 2018 Nokia Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.vid.job.impl; - - -import org.mockito.ArgumentCaptor; -import org.mockito.InjectMocks; -import org.mockito.Mock; -import org.onap.vid.job.JobsBrokerService; -import org.onap.vid.job.command.JobCommandFactory; -import org.onap.vid.properties.Features; -import org.quartz.JobDetail; -import org.quartz.Scheduler; -import org.quartz.SchedulerException; -import org.quartz.Trigger; -import org.springframework.scheduling.quartz.SchedulerFactoryBean; -import org.testng.annotations.BeforeMethod; -import org.testng.annotations.Test; -import org.togglz.core.manager.FeatureManager; - -import java.util.List; -import java.util.stream.Collectors; - -import static org.hamcrest.MatcherAssert.assertThat; -import static org.hamcrest.collection.IsIterableContainingInAnyOrder.containsInAnyOrder; -import static org.mockito.Mockito.times; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.verifyZeroInteractions; -import static org.mockito.Mockito.when; -import static org.mockito.MockitoAnnotations.initMocks; - -public class JobSchedulerInitializerTest { - - @Mock - private JobsBrokerService brokerService; - - @Mock - private SchedulerFactoryBean schedulerFactoryBean; - - @Mock - private FeatureManager featureManager; - - @Mock - private JobCommandFactory commandFactory; - - @Mock - private Scheduler scheduler; - - @InjectMocks - private JobSchedulerInitializer jobSchedulerInitializer; - - @BeforeMethod - public void setUp() { - initMocks(this); - } - - - @Test - public void shouldNotInitializeSchedulerWhenAsyncJobsAreDisabled() { - when(featureManager.isActive(Features.FLAG_ASYNC_JOBS)).thenReturn(false); - - jobSchedulerInitializer.init(); - - verifyZeroInteractions(schedulerFactoryBean); - } - - - @Test - public void shouldInitializeSchedulerWhenAsyncJobsAreEnabled() throws SchedulerException { - ArgumentCaptor<JobDetail> jobDetailArgumentCaptor = ArgumentCaptor.forClass(JobDetail.class); - ArgumentCaptor<Trigger> triggerArgumentCaptor = ArgumentCaptor.forClass(Trigger.class); - when(featureManager.isActive(Features.FLAG_ASYNC_JOBS)).thenReturn(true); - when(schedulerFactoryBean.getScheduler()).thenReturn(scheduler); - - jobSchedulerInitializer.init(); - - verify(scheduler, times(2)).scheduleJob(jobDetailArgumentCaptor.capture(), triggerArgumentCaptor.capture()); - - List<Object> topics = extractTopics(jobDetailArgumentCaptor); - - List<String> descriptions = extractDescription(triggerArgumentCaptor); - - assertThat(topics, containsInAnyOrder(org.onap.vid.job.Job.JobStatus.IN_PROGRESS, org.onap.vid.job.Job.JobStatus.PENDING)); - assertThat(descriptions, containsInAnyOrder("Trigger to run async worker for PENDING", "Trigger to run async worker for IN_PROGRESS")); - } - - private List<Object> extractTopics(ArgumentCaptor<JobDetail> jobDetailArgumentCaptor) { - return jobDetailArgumentCaptor - .getAllValues() - .stream() - .map(JobDetail::getJobDataMap) - .map(x -> x.get("topic")) - .collect(Collectors.toList()); - } - - private List<String> extractDescription(ArgumentCaptor<Trigger> triggerArgumentCaptor) { - return triggerArgumentCaptor - .getAllValues() - .stream() - .map(Trigger::getDescription) - .collect(Collectors.toList()); - } -}
\ No newline at end of file |