b5b0f5a8ef6b9f1ee378d492062a6ad994fe087b
[so.git] /
1 package org.onap.so.adapters.tasks.orchestration;
2
3 import org.camunda.bpm.client.task.ExternalTask;
4 import org.camunda.bpm.client.task.ExternalTaskService;
5 import org.junit.Test;
6 import org.junit.runner.RunWith;
7 import org.mockito.InjectMocks;
8 import org.mockito.Mock;
9 import org.mockito.Mockito;
10 import static org.mockito.Mockito.any;
11 import static org.mockito.Mockito.eq;
12 import java.io.IOException;
13 import java.nio.file.Files;
14 import java.nio.file.Paths;
15 import org.mockito.junit.MockitoJUnitRunner;
16 import org.onap.so.adapters.tasks.orchestration.PollService;
17 import org.onap.so.logging.tasks.AuditMDCSetup;
18 import org.onap.so.openstack.exceptions.MsoException;
19 import org.onap.so.openstack.utils.MsoHeatUtils;
20 import com.woorea.openstack.heat.model.Stack;
21
22 @RunWith(MockitoJUnitRunner.class)
23 public class PollServiceTest {
24
25     private String RESOURCE_PATH = "src/test/resources/__files/";
26
27     @Mock
28     private ExternalTask mockExternalTask;
29
30     @Mock
31     private ExternalTaskService mockExternalTaskService;
32
33     @Mock
34     private MsoHeatUtils msoHeatUtils;
35
36     @Mock
37     private AuditMDCSetup mdcSetup;
38
39     @InjectMocks
40     private PollService pollService;
41
42     @Test
43     public void testExecuteExternalTask() throws MsoException, IOException {
44         String xmlString =
45                 new String(Files.readAllBytes(Paths.get(RESOURCE_PATH + "/vnfAdapterTaskRequestCreate.xml")));
46
47         Mockito.when(mockExternalTask.getVariable("vnfAdapterTaskRequest")).thenReturn(xmlString);
48         Mockito.when(mockExternalTask.getVariable("PollRollbackStatus")).thenReturn(false);
49         Mockito.when(mockExternalTask.getVariable("stackId")).thenReturn("stackId/stack123");
50         Mockito.when(msoHeatUtils.pollStackForStatus(eq(1), any(Stack.class), eq("CREATE_IN_PROGRESS"), eq("regionOne"),
51                 eq("0422ffb57ba042c0800a29dc85ca70f8"), eq(false))).thenReturn(new Stack());
52         // Mockito.doNothing().when(msoHeatUtils).postProcessStackCreate(Mockito.any(), Mockito.any(), Mockito.any(),
53         // Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any());
54
55         pollService.executeExternalTask(mockExternalTask, mockExternalTaskService);
56
57         Mockito.verify(msoHeatUtils).pollStackForStatus(eq(1), any(Stack.class), eq("CREATE_IN_PROGRESS"),
58                 eq("regionOne"), eq("0422ffb57ba042c0800a29dc85ca70f8"), eq(false));
59
60     }
61
62     @Test
63     public void testExecuteExternalTask_rollback() throws MsoException, IOException {
64         String xmlString =
65                 new String(Files.readAllBytes(Paths.get(RESOURCE_PATH + "/vnfAdapterTaskRequestCreate.xml")));
66
67         Mockito.when(mockExternalTask.getVariable("vnfAdapterTaskRequest")).thenReturn(xmlString);
68         Mockito.when(mockExternalTask.getVariable("PollRollbackStatus")).thenReturn(true);
69         Mockito.when(mockExternalTask.getVariable("stackId")).thenReturn("stackId/stack123");
70         Mockito.when(msoHeatUtils.pollStackForStatus(eq(1), any(), eq("DELETE_IN_PROGRESS"), eq("regionOne"),
71                 eq("0422ffb57ba042c0800a29dc85ca70f8"), eq(true))).thenReturn(new Stack());
72         Mockito.doNothing().when(msoHeatUtils).postProcessStackDelete(Mockito.any());
73
74
75         pollService.executeExternalTask(mockExternalTask, mockExternalTaskService);
76
77         Mockito.verify(msoHeatUtils).pollStackForStatus(eq(1), any(), eq("DELETE_IN_PROGRESS"), eq("regionOne"),
78                 eq("0422ffb57ba042c0800a29dc85ca70f8"), eq(true));
79
80     }
81
82 }