1 package org.onap.vid.mso;
3 import com.fasterxml.jackson.databind.ObjectMapper;
4 import org.mockito.InjectMocks;
5 import org.mockito.Mock;
6 import org.mockito.Mockito;
7 import org.mockito.MockitoAnnotations;
8 import org.onap.portalsdk.core.util.SystemProperties;
9 import org.onap.vid.controllers.MsoConfig;
10 import org.onap.vid.mso.MsoBusinessLogicImpl;
11 import org.onap.vid.mso.MsoInterface;
12 import org.onap.vid.mso.MsoResponseWrapper;
13 import org.onap.vid.mso.rest.RequestDetails;
14 import org.springframework.test.context.ContextConfiguration;
15 import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
16 import org.springframework.test.context.web.WebAppConfiguration;
17 import org.testng.annotations.BeforeMethod;
18 import org.testng.annotations.Test;
22 import static org.testng.Assert.assertEquals;
23 import static org.testng.Assert.assertNotNull;
26 @ContextConfiguration(classes = { SystemProperties.class, MsoConfig.class })
28 public class MsoBusinessLogicTest extends AbstractTestNGSpringContextTests {
31 private MsoBusinessLogicImpl msoBusinessLogic;
34 private MsoInterface msoClient;
37 public void initMocks(){
38 MockitoAnnotations.initMocks(this);
42 public void testCreateInstance() throws Exception {
43 String instanceId = "3f93c7cb-2fd0-4557-9514-e189b7b04f9d";
44 final RequestDetails requestDetails = setRequestDetails("mso_request_create_configuration.json");
45 Mockito.doReturn(getOkResponse(instanceId)).when(msoClient).createConfigurationInstance(requestDetails, "/serviceInstances/v6/3f93c7cb-2fd0-4557-9514-e189b7b04f9d/configurations");
46 final MsoResponseWrapper msoResponseWrapper = msoBusinessLogic.createConfigurationInstance(requestDetails, instanceId);
48 assertNotNull(msoResponseWrapper);
49 assertEquals(202, msoResponseWrapper.getStatus());
52 private MsoResponseWrapper getOkResponse(String instanceId){
53 MsoResponseWrapper responseWrapper = new MsoResponseWrapper();
54 String entity = " \"body\": {\n" +
55 " \"requestReferences\": {\n" +
56 " \"instanceId\": \""+instanceId+"\",\n" +
57 " \"requestId\": \"b6dc9806-b094-42f7-9386-a48de8218ce8\"\n" +
59 responseWrapper.setEntity(entity);
60 responseWrapper.setStatus(202);
61 return responseWrapper;
64 private RequestDetails setRequestDetails(String bodyFileName)throws Exception {
65 final URL resource = this.getClass().getResource("/payload_jsons/" + bodyFileName);
66 ObjectMapper mapper = new ObjectMapper();
67 RequestDetails requestDetails = mapper.readValue(resource, RequestDetails.class);
68 return requestDetails;