0ecf0448e247795bdf9f06f0d0ea6d87f658a3c0
[so.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.so.bpmn.infrastructure.bpmn.subprocess;
22
23 import static org.camunda.bpm.engine.test.assertions.ProcessEngineTests.assertThat;
24 import static org.mockito.ArgumentMatchers.any;
25 import static org.mockito.Mockito.doThrow;
26 import java.io.IOException;
27 import org.camunda.bpm.engine.delegate.BpmnError;
28 import org.camunda.bpm.engine.runtime.ProcessInstance;
29 import org.junit.Test;
30 import org.onap.so.bpmn.BaseBPMNTest;
31 import org.onap.so.bpmn.common.BuildingBlockExecution;
32
33 public class DeactivateVnfBBTest extends BaseBPMNTest {
34     @Test
35     public void sunnyDay() throws InterruptedException, IOException {
36         mockSubprocess("SDNCHandler", "My Mock Process Name", "GenericStub");
37         ProcessInstance pi = runtimeService.startProcessInstanceByKey("DeactivateVnfBB", variables);
38         assertThat(pi).isNotNull();
39         assertThat(pi).isStarted().hasPassedInOrder("Start_DeactivateVnfBB", "Task_SDNCAdapterVnfTopologyDeactivate",
40                 "CallActivity_sdncHandler", "Task_DeactivateOrchestrationStatusVnf", "End_DeactivateVnfBB");
41         assertThat(pi).isEnded();
42     }
43
44     @Test
45     public void rainyDayDeactivateVnfSDNCError_Test() throws Exception {
46         doThrow(new BpmnError("7000", "TESTING ERRORS")).when(sdncDeactivateTasks)
47                 .deactivateVnf(any(BuildingBlockExecution.class));
48         ProcessInstance pi = runtimeService.startProcessInstanceByKey("DeactivateVnfBB", variables);
49         assertThat(pi).isNotNull();
50         assertThat(pi).isStarted().hasPassedInOrder("Start_DeactivateVnfBB", "Task_SDNCAdapterVnfTopologyDeactivate")
51                 .hasNotPassed("Task_DeactivateOrchestrationStatusVnf", "End_DeactivateVnfBB");
52         assertThat(pi).isEnded();
53     }
54
55     @Test
56     public void rainyDayDeactivateVnfAAIError_Test() throws Exception {
57         mockSubprocess("SDNCHandler", "My Mock Process Name", "GenericStub");
58         doThrow(new BpmnError("7000", "TESTING ERRORS")).when(aaiUpdateTasks)
59                 .updateOrchestrationStatusAssignedVnf(any(BuildingBlockExecution.class));
60         ProcessInstance pi = runtimeService.startProcessInstanceByKey("DeactivateVnfBB", variables);
61         assertThat(pi).isNotNull();
62         assertThat(pi).isStarted().hasPassedInOrder("Start_DeactivateVnfBB", "Task_SDNCAdapterVnfTopologyDeactivate",
63                 "Task_DeactivateOrchestrationStatusVnf").hasNotPassed("End_DeactivateVnfBB");
64         assertThat(pi).isEnded();
65     }
66 }