94d9a28b76dd31f3a5ed8a8c5422d5fba4a48ee5
[so.git] /
1 package org.onap.so.adapters.tasks.orchestration;
2
3 import static org.junit.Assert.assertEquals;
4 import java.io.IOException;
5 import java.nio.file.Files;
6 import java.nio.file.Paths;
7 import java.util.Optional;
8 import org.camunda.bpm.client.task.ExternalTask;
9 import org.camunda.bpm.client.task.ExternalTaskService;
10 import org.junit.Test;
11 import org.junit.runner.RunWith;
12 import org.mockito.InjectMocks;
13 import org.mockito.Mock;
14 import org.mockito.Mockito;
15 import org.mockito.junit.MockitoJUnitRunner;
16 import org.onap.so.adapters.vnf.MsoVnfAdapterImpl;
17 import org.onap.so.adapters.vnf.VnfAdapterUtils;
18 import org.onap.so.adapters.vnf.exceptions.VnfException;
19 import org.onap.so.logging.tasks.AuditMDCSetup;
20 import org.onap.so.openstack.exceptions.MsoException;
21 import org.onap.so.openstack.utils.MsoHeatUtils;
22 import com.woorea.openstack.heat.model.Stack;
23
24 @RunWith(MockitoJUnitRunner.class)
25 public class RollbackServiceTest {
26
27     private String RESOURCE_PATH = "src/test/resources/__files/";
28
29     @Mock
30     private ExternalTask mockExternalTask;
31
32     @Mock
33     private ExternalTaskService mockExternalTaskService;
34
35     @Mock
36     private MsoVnfAdapterImpl vnfAdapterImpl;
37
38     @Mock
39     private VnfAdapterUtils vnfAdapterUtils;
40
41     @Mock
42     private MsoHeatUtils msoHeatUtils;
43
44     @Mock
45     private AuditMDCSetup mdcSetup;
46
47     @InjectMocks
48     private RollbackService rollbackService;
49
50
51     @Test
52     public void findRequestTypeTest() throws IOException {
53         String payload = new String(Files.readAllBytes(Paths.get(RESOURCE_PATH + "/vnfAdapterTaskRequestCreate.xml")));
54
55         Optional<String> actual = rollbackService.findRequestType(payload);
56
57         assertEquals("createVfModuleRequest", actual.get());
58     }
59
60     @Test
61     public void testExecuteExternalTask() throws VnfException, MsoException, IOException {
62         String payload = new String(Files.readAllBytes(Paths.get(RESOURCE_PATH + "/vnfAdapterTaskRequestCreate.xml")));
63
64         Stack stack = new Stack();
65         stack.setId("heatId");
66
67         Mockito.when(vnfAdapterUtils.isMulticloudMode(Mockito.any(), Mockito.any())).thenReturn(false);
68         Mockito.when(mockExternalTask.getVariable("openstackAdapterTaskRequest")).thenReturn(payload);
69         Mockito.doNothing().when(vnfAdapterImpl).deleteVfModule(Mockito.any(), Mockito.any(), Mockito.any(),
70                 Mockito.any(), Mockito.any(), Mockito.any(), Mockito.any());
71         Mockito.doNothing().when(mockExternalTaskService).complete(Mockito.any(), Mockito.any());
72
73         rollbackService.executeExternalTask(mockExternalTask, mockExternalTaskService);
74
75         Mockito.verify(vnfAdapterImpl, Mockito.times(1)).deleteVfModule(Mockito.eq("regionOne"),
76                 Mockito.eq("CloudOwner"), Mockito.eq("0422ffb57ba042c0800a29dc85ca70f8"), Mockito.eq("dummy_id"),
77                 Mockito.any(String.class), Mockito.any(), Mockito.any());
78         Mockito.verify(mockExternalTaskService).complete(Mockito.eq(mockExternalTask), Mockito.any());
79
80     }
81
82 }