Fix sql injection vulnerability
[portal.git] / ecomp-portal-BE-common / src / test / java / org / onap / portalapp / portal / controller / SchedulerControllerTest.java
index dffd561..8216510 100644 (file)
@@ -40,11 +40,13 @@ package org.onap.portalapp.portal.controller;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.poi.ss.formula.functions.T;
 import org.json.simple.JSONObject;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
+import org.mockito.Matchers;
 import org.mockito.Mock;
 import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
@@ -53,6 +55,7 @@ import org.onap.portalapp.portal.core.MockEPUser;
 import org.onap.portalapp.portal.framework.MockitoTestSuite;
 import org.onap.portalapp.portal.scheduler.SchedulerProperties;
 import org.onap.portalapp.portal.scheduler.SchedulerRestInterface;
+import org.onap.portalapp.portal.scheduler.restobjects.RestObject;
 import org.onap.portalsdk.core.util.SystemProperties;
 import org.onap.portalsdk.core.web.support.UserUtils;
 import org.powermock.api.mockito.PowerMockito;
@@ -60,7 +63,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
 import org.powermock.modules.junit4.PowerMockRunner;
 
 @RunWith(PowerMockRunner.class)
-@PrepareForTest({UserUtils.class,SystemProperties.class})
+@PrepareForTest({UserUtils.class,SystemProperties.class,SchedulerProperties.class})
 
 public class SchedulerControllerTest {
 
@@ -90,6 +93,22 @@ public class SchedulerControllerTest {
                
        }
        
+       @Test
+       public void  getTimeSlotsTestWithException1() throws Exception{
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               RestObject<T> restObject=new RestObject<>();
+               Mockito.doThrow(new NullPointerException()).when(schedulerRestInterface).Get(Matchers.any(),Matchers.any(),Matchers.any(),Matchers.any());
+               schedulerController.getTimeSlots(mockedRequest, "12");
+               
+       }
+       
+       
+       @Test
+       public void  getTimeSlotsTestWithexception() throws Exception{
+               schedulerController.getTimeSlots(mockedRequest, null);
+               
+       }
+       
        @Test
        public void postCreateNewVNFChangeTest() throws Exception{
                //String testJsonData="{\"domain\":\"ChangeManagement\",\"scheduleName\":\"VnfUpgrade/DWF\",\"userId\":\"su7376\",\"domainData\":[{\"WorkflowName\":\"HEAT Stack Software Update for vNFs\",\"CallbackUrl\":\"http://127.0.0.1:8989/scheduler/v1/loopbacktest/vid\",\"CallbackData\":\"testing\"}],\"schedulingInfo\":{\"normalDurationInSeconds\":60,\"additionalDurationInSeconds\":60,\"concurrencyLimit\":60,\"policyId\":\"SNIRO_CM_1707.Config_MS_Demo_TimeLimitAndVerticalTopology_zone_localTime.1.xml\",\"vnfDetails\":[{\"groupId\":\"group1\",\"node\":[\"satmo415vbc\",\"satmo455vbc\"]}]}}";
@@ -98,6 +117,24 @@ public class SchedulerControllerTest {
                schedulerController.postCreateNewVNFChange(mockedRequest, jsonObject);
        }
        
+       @Test
+       public void  postCreateNewVNFChangeTestWithException1() throws Exception{
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               RestObject<T> restObject=new RestObject<>();
+               Mockito.doThrow(new NullPointerException()).when(schedulerRestInterface).Post(Matchers.any(),Matchers.any(),Matchers.any(),Matchers.any());
+               schedulerController.postCreateNewVNFChange(mockedRequest, jsonObject);
+               
+       }
+       
+       
+       @Test
+       public void postCreateNewVNFChangeTestWithException() throws Exception{
+               //String testJsonData="{\"domain\":\"ChangeManagement\",\"scheduleName\":\"VnfUpgrade/DWF\",\"userId\":\"su7376\",\"domainData\":[{\"WorkflowName\":\"HEAT Stack Software Update for vNFs\",\"CallbackUrl\":\"http://127.0.0.1:8989/scheduler/v1/loopbacktest/vid\",\"CallbackData\":\"testing\"}],\"schedulingInfo\":{\"normalDurationInSeconds\":60,\"additionalDurationInSeconds\":60,\"concurrencyLimit\":60,\"policyId\":\"SNIRO_CM_1707.Config_MS_Demo_TimeLimitAndVerticalTopology_zone_localTime.1.xml\",\"vnfDetails\":[{\"groupId\":\"group1\",\"node\":[\"satmo415vbc\",\"satmo455vbc\"]}]}}";
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               
+               schedulerController.postCreateNewVNFChange(mockedRequest, null);
+       }
+       
        @Test
        public void postSubmitVnfChangeTimeslotsTest() throws Exception{
                JSONObject jsonObject =Mockito.mock(JSONObject.class);
@@ -107,4 +144,40 @@ public class SchedulerControllerTest {
                schedulerController.postSubmitVnfChangeTimeslots(mockedRequest, jsonObject);
        }
        
+       @Test
+       public void  postSubmitVnfChangeTimeslotsTestWithException1() throws Exception{
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               RestObject<T> restObject=new RestObject<>();
+               Mockito.doThrow(new NullPointerException()).when(schedulerRestInterface).Post(Matchers.any(),Matchers.any(),Matchers.any(),Matchers.any());
+               schedulerController.postSubmitVnfChangeTimeslots(mockedRequest, jsonObject);
+               
+       }
+       
+       @Test
+       public void postSubmitVnfChangeTimeslotsTestWithException() throws Exception{
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               Mockito.when(jsonObject.get("scheduleId")).thenReturn("12");
+        PowerMockito.mockStatic(SystemProperties.class);
+               PowerMockito.when(SystemProperties.getProperty(SchedulerProperties.SCHEDULER_SUBMIT_NEW_VNF_CHANGE)).thenReturn("/v1/ChangeManagement/schedules/{scheduleId}/approvals");
+               schedulerController.postSubmitVnfChangeTimeslots(mockedRequest, null);
+       }
+       
+       @Test
+       public void getSchedulerConstantTestWithException() throws Exception{
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               Mockito.when(jsonObject.get("scheduleId")).thenReturn("12");
+        PowerMockito.mockStatic(SystemProperties.class);
+               PowerMockito.when(SystemProperties.getProperty(SchedulerProperties.SCHEDULER_CALLBACK_URL)).thenReturn("mockedRequest");
+               schedulerController.getSchedulerConstant(mockedRequest, mockedResponse);
+       }
+       
+       @Test
+       public void getSchedulerConstantTest() throws Exception{
+               JSONObject jsonObject =Mockito.mock(JSONObject.class);
+               //Mockito.when(jsonObject.get("scheduleId")).thenReturn("12");
+        PowerMockito.mockStatic(SystemProperties.class);
+               PowerMockito.when(SystemProperties.getProperty(SchedulerProperties.SCHEDULER_CALLBACK_URL)).thenReturn("callbackUrl");
+               schedulerController.getSchedulerConstant(mockedRequest, mockedResponse);
+       }
+       
 }
\ No newline at end of file