Springboot 2.0 upgrade
[so.git] / bpmn / MSOCommonBPMN / src / test / groovy / org / onap / so / bpmn / common / scripts / MsoGroovyTest.groovy
index 19638f4..de44caa 100644 (file)
@@ -16,7 +16,7 @@
  * See the License for the specific language governing permissions and 
  * limitations under the License. 
  * ============LICENSE_END========================================================= 
- */
+ */ 
 
 package org.onap.so.bpmn.common.scripts
 
@@ -29,16 +29,30 @@ import org.camunda.bpm.engine.repository.ProcessDefinition
 import org.junit.Rule
 import org.junit.rules.ExpectedException
 import org.junit.runner.RunWith
-import org.mockito.runners.MockitoJUnitRunner
+import org.mockito.junit.MockitoJUnitRunner
+import org.onap.aai.domain.yang.GenericVnf
+import org.onap.so.bpmn.mock.FileUtil
+import org.onap.so.client.aai.AAIObjectPlurals
+import org.onap.so.client.aai.AAIObjectType
 import org.onap.so.client.aai.AAIResourcesClient
+import org.onap.so.client.aai.entities.AAIResultWrapper
+import org.onap.so.client.aai.entities.uri.AAIResourceUri
+import org.onap.so.client.aai.entities.uri.AAIUriFactory
+import org.onap.so.client.graphinventory.entities.uri.Depth
+import org.onap.so.constants.Defaults
 
-@RunWith(MockitoJUnitRunner.class)
+@RunWith(MockitoJUnitRunner.Silent.class)
 abstract class MsoGroovyTest {
 
     @Rule
     public ExpectedException thrown = ExpectedException.none()
+
        protected ExecutionEntity mockExecution
        protected AAIResourcesClient client
+    protected AllottedResourceUtils allottedResourceUtils_MOCK
+       protected final String SEARCH_RESULT_AAI_WITH_RESULTDATA =
+                       FileUtil.readResourceFile("__files/aai/searchResults.json")
+       protected static final String CLOUD_OWNER = Defaults.CLOUD_OWNER.toString();
 
        protected void init(String procName){
                mockExecution = setupMock(procName)
@@ -49,14 +63,91 @@ abstract class MsoGroovyTest {
        protected ExecutionEntity setupMock(String procName) {
                ProcessDefinition mockProcessDefinition = mock(ProcessDefinition.class)
                when(mockProcessDefinition.getKey()).thenReturn(procName)
+               
                RepositoryService mockRepositoryService = mock(RepositoryService.class)
                when(mockRepositoryService.getProcessDefinition()).thenReturn(mockProcessDefinition)
                when(mockRepositoryService.getProcessDefinition().getKey()).thenReturn(procName)
                when(mockRepositoryService.getProcessDefinition().getId()).thenReturn("100")
+               
                ProcessEngineServices mockProcessEngineServices = mock(ProcessEngineServices.class)
                when(mockProcessEngineServices.getRepositoryService()).thenReturn(mockRepositoryService)
+               
                ExecutionEntity mockExecution = mock(ExecutionEntity.class)
                when(mockExecution.getProcessEngineServices()).thenReturn(mockProcessEngineServices)
+               
+               return mockExecution
+       }
+       
+       protected ExecutionEntity setupMockWithPrefix(String procName, String prefix) {
+               ExecutionEntity mockExecution = mock(ExecutionEntity.class)
+
+               when(mockExecution.getVariable("prefix")).thenReturn(prefix)
+
+               ProcessEngineServices processEngineServices = mock(ProcessEngineServices.class)
+               RepositoryService repositoryService = mock(RepositoryService.class)
+               ProcessDefinition processDefinition = mock(ProcessDefinition.class)
+
+               when(mockExecution.getProcessEngineServices()).thenReturn(processEngineServices)
+               when(processEngineServices.getRepositoryService()).thenReturn(repositoryService)
+               when(repositoryService.getProcessDefinition(mockExecution.getProcessDefinitionId())).thenReturn(processDefinition)
+               when(processDefinition.getKey()).thenReturn(procName)
+               when(mockExecution.getVariable("isDebugLogEnabled")).thenReturn("true")
                return mockExecution
        }
+       
+    protected <T> Optional<T> getAAIObjectFromJson(Class<T> clazz , String file){
+        String json = FileUtil.readResourceFile(file)
+        AAIResultWrapper resultWrapper = new AAIResultWrapper(json)
+        return resultWrapper.asBean(clazz)
+    }
+
+    protected Optional<GenericVnf> mockAAIGenericVnf(String vnfId){
+        return mockAAIGenericVnf(vnfId,"__files/aai/GenericVnf.json")
+    }
+       
+    protected Optional<GenericVnf> mockAAIGenericVnf(String vnfId,String file){
+        AAIResourceUri resourceUri = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId)
+        AAIResourceUri resourceUriDepthOne = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId).depth(Depth.ONE)
+        Optional<GenericVnf> genericVnf = getAAIObjectFromJson(GenericVnf.class,file);
+        when(client.get(GenericVnf.class, resourceUri)).thenReturn(genericVnf)
+        when(client.get(GenericVnf.class, resourceUriDepthOne)).thenReturn(genericVnf)
+        return genericVnf
+    }
+
+    protected Optional<GenericVnf> mockAAIGenericVnfByName(String vnfName){
+        AAIResourceUri resourceUri = AAIUriFactory.createResourceUri(AAIObjectPlurals.GENERIC_VNF).queryParam("vnf-name", vnfName)
+        AAIResourceUri resourceUriDepthOne = AAIUriFactory.createResourceUri(AAIObjectPlurals.GENERIC_VNF).queryParam("vnf-name", vnfName).depth(Depth.ONE)
+        Optional<GenericVnf> genericVnf = getAAIObjectFromJson(GenericVnf.class,"__files/aai/GenericVnf.json");
+        when(client.get(GenericVnf.class, resourceUri)).thenReturn(genericVnf)
+        when(client.get(GenericVnf.class, resourceUriDepthOne)).thenReturn(genericVnf)
+        return genericVnf
+    }
+
+    protected void mockAAIGenericVnfNotFound(String vnfId){
+        AAIResourceUri resourceUri = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId).depth(Depth.ONE)
+        AAIResourceUri resourceUriDepthOne = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId).depth(Depth.ONE)
+        when(client.get(GenericVnf.class, resourceUri)).thenReturn(Optional.empty())
+        when(client.get(GenericVnf.class, resourceUriDepthOne)).thenReturn(Optional.empty())
+    }
+
+    protected void mockAAIGenericVnfByNameNotFound(String vnfName){
+        AAIResourceUri resourceUri = AAIUriFactory.createResourceUri(AAIObjectPlurals.GENERIC_VNF).queryParam("vnf-name", vnfName)
+        AAIResourceUri resourceUriDepthOne = AAIUriFactory.createResourceUri(AAIObjectPlurals.GENERIC_VNF).queryParam("vnf-name", vnfName).depth(Depth.ONE)
+        when(client.get(GenericVnf.class, resourceUri)).thenReturn(Optional.empty())
+        when(client.get(GenericVnf.class, resourceUriDepthOne)).thenReturn(Optional.empty())
+    }
+
+    protected AAIResultWrapper mockVolumeGroupWrapper(String region, String volumeGroupId, String file){
+        AAIResourceUri resourceUri = AAIUriFactory.createResourceUri(AAIObjectType.VOLUME_GROUP,CLOUD_OWNER, region,volumeGroupId)
+        String json = FileUtil.readResourceFile(file)
+        AAIResultWrapper resultWrapper = new AAIResultWrapper(json)
+        when(client.get(resourceUri)).thenReturn(resultWrapper)
+        return resultWrapper
+    }
+
+    void initAR(String procName){
+        init(procName)
+        allottedResourceUtils_MOCK = spy(new AllottedResourceUtils(mock(AbstractServiceTaskProcessor.class)))
+        when(allottedResourceUtils_MOCK.getAAIClient()).thenReturn(client)
+    }
 }