diff options
author | Ittay Stern <ittay.stern@att.com> | 2018-12-31 17:21:27 +0200 |
---|---|---|
committer | Ittay Stern <ittay.stern@att.com> | 2019-01-09 20:19:55 +0200 |
commit | 6ad41e3ccd398a2721f41ad61c80b7bb03f7d127 (patch) | |
tree | 3bd672dff83e3218232cd8665680416b7fc26a5d /vid-app-common/src/test/java/org/onap/vid/job/impl/JobSchedulerInitializerTest.java | |
parent | 5ec29ff5e3864f1ba6ecac71f8bffbefa400cf27 (diff) |
Merge from ECOMP's repository
Main Features
--------------
- Async-Instantiation jobs mechanism major update; still WIP (package
`org.onap.vid.job`)
- New features in View/Edit: Activate fabric configuration; show
related networks; soft delete
- Support AAI service-tree traversal (`AAIServiceTree`)
- In-memory cache for SDC models and certain A&AI queries
(`CacheProviderWithLoadingCache`)
- Upgrade TOSCA Parser and add parsing options; fix malformed TOSCA
models
- Resolve Cloud-Owner values for MSO
- Pass X-ONAP headers to MSO
Infrastructure
--------------
- Remove codehaus' jackson mapper; use soley fasterxml 2.9.7
- Surefire invokes both TestNG and JUnit tests
- Support Kotlin source files
- AaiController2 which handles errors in a "Spring manner"
- Inline generated-sources and remove jsonschema2pojo
Quality
--------
- Cumulative bug fixes (A&AI API, UI timeouts, and many more)
- Many Sonar issues cleaned-up
- Some unused classes removed
- Minor changes in vid-automation project, allowing some API
verification to run
Hard Merges
------------
- HTTP Clients (MSO, A&AI, WebConfig, OutgoingRequestHeadersTest)
- Moved `package org.onap.vid.controllers` to `controller`, without
plural -- just to keep semantic sync with ECOMP.
Reference commit in ECOMP: 3d1141625
Issue-ID: VID-378
Change-Id: I9c8d1e74caa41815891d441fc0760bb5f29c5788
Signed-off-by: Ittay Stern <ittay.stern@att.com>
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 |