+ @Test
+ public void addArtifactToComponent() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ToscaDataDefinition> instanceArtifacts = Collections.singletonMap(INSTANCE_ID, getArtifactsByInstance("name1"));
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDefinition> artMap = new HashMap<>();
+ artMap.put(INSTANCE_ID, artifactDef);
+ doReturn(Either.left(artifactDef)).when(testInstance).updateArtifactOnGraph(resource,
+ artifactDef, NodeTypeEnum.Resource, null, INSTANCE_ID, false,
+ false);
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.addArtifactToComponent(
+ artifactDef, resource, NodeTypeEnum.Resource, false, "instanceId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void addArtifactToComponentEsId() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ artifactDef.setUniqueId(null);
+ artifactDef.setEsId(INSTANCE_ID);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDefinition> artMap = new HashMap<>();
+ artMap.put(INSTANCE_ID, artifactDef);
+ doReturn(StorageOperationStatus.OK).when(testInstance).updateToscaDataOfToscaElement(Mockito.anyString(),
+ Mockito.any(), Mockito.any(), (List<ToscaDataDefinition>) Mockito.any(), Mockito.any());
+ doReturn(Either.left(artifactDef)).when(testInstance).updateArtifactOnGraph(resource,
+ artifactDef, NodeTypeEnum.Resource, null, INSTANCE_ID, false,
+ false);
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.addArtifactToComponent(
+ artifactDef, resource, NodeTypeEnum.Resource, false, "instanceId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void addArtifactToComponentFail() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ToscaDataDefinition> instanceArtifacts = Collections.singletonMap(INSTANCE_ID, getArtifactsByInstance("name1"));
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDefinition> artMap = new HashMap<>();
+ artMap.put(INSTANCE_ID, artifactDef);
+ doReturn(Either.right(StorageOperationStatus.ARTIFACT_NOT_FOUND)).when(testInstance).updateArtifactOnGraph(resource,
+ artifactDef, NodeTypeEnum.Resource, null, INSTANCE_ID, false,
+ false);
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.addArtifactToComponent(
+ artifactDef, resource, NodeTypeEnum.Resource, false, "instanceId");
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void updateArtifactOnResource() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDefinition> artMap = new HashMap<>();
+ artMap.put(INSTANCE_ID, artifactDef);
+ doReturn(StorageOperationStatus.OK).when(testInstance).updateToscaDataOfToscaElement(Mockito.anyString(),
+ Mockito.any(), Mockito.any(), (List<ToscaDataDefinition>) Mockito.any(), Mockito.any());
+ doReturn(Either.left(artifactDef)).when(testInstance).updateArtifactOnGraph(resource,
+ artifactDef, NodeTypeEnum.Resource, null, INSTANCE_ID, false,
+ false);
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.updateArtifactOnResource(
+ artifactDef, resource, "instanceId", NodeTypeEnum.Resource, "instanceId", false);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void updateArtifactOnResourceFail() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ToscaDataDefinition> instanceArtifacts = Collections.singletonMap(INSTANCE_ID, getArtifactsByInstance("name1"));
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDefinition> artMap = new HashMap<>();
+ artMap.put(INSTANCE_ID, artifactDef);
+
+ doReturn(Either.right(StorageOperationStatus.ARTIFACT_NOT_FOUND)).when(testInstance).updateArtifactOnGraph(resource,
+ artifactDef, NodeTypeEnum.Resource, INSTANCE_ID, INSTANCE_ID, false,
+ false);
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.updateArtifactOnResource(
+ artifactDef, resource, "instanceId", NodeTypeEnum.Resource, "instanceId", false);
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void isCloneNeeded() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+
+ Either<Boolean, StorageOperationStatus> ret = testInstance.isCloneNeeded(
+ INSTANCE_ID, artifactDef, NodeTypeEnum.Resource);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById2() {
+ Map<String, ToscaDataDefinition> instanceArtifacts =
+ Collections.singletonMap(INSTANCE_ID, getArtifactsByInstanceSettingUniqueId("artifactDefId"));
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById3() {
+ Map<String, ToscaDataDefinition> instanceArtifacts =
+ Collections.singletonMap(INSTANCE_ID, getArtifactsByInstanceSettingUniqueId("artifactDefId"));
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph("containerId", EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById4() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById5() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById6() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.SERVICE_API_ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifactById7_NotFound1() {
+ Map<String, InterfaceDataDefinition> interfaceDefinitions = getInterfaceDataDefinitionsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.SERVICE_API_ARTIFACTS);
+ doReturn(Either.left(interfaceDefinitions)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.INTERFACE);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void getArtifactById7_NotFound2() {
+ Map<String, InterfaceDataDefinition> interfaceDefinitions = getInterfaceDataDefinitionsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.SERVICE_API_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.INTERFACE);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void getArtifactById7_NotFound3() {
+ Map<String, InterfaceDataDefinition> interfaceDefinitions =
+ getInterfaceDataDefinitionsWithOperationsByNameNotFound("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.SERVICE_API_ARTIFACTS);
+ doReturn(Either.left(interfaceDefinitions)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.INTERFACE);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void getArtifactById7() {
+ Map<String, InterfaceDataDefinition> interfaceDefinitions = getInterfaceDataDefinitionsWithOperationsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph("containerId",
+ EdgeLabelEnum.INSTANCE_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID,
+ EdgeLabelEnum.SERVICE_API_ARTIFACTS);
+ doReturn(Either.left(interfaceDefinitions)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.INTERFACE);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getArtifactById(
+ INSTANCE_ID, "artifactDefId", ComponentTypeEnum.RESOURCE_INSTANCE, "containerId");
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void removeArtifactFromResource() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName2("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(StorageOperationStatus.OK).when(testInstance).deleteToscaDataElement(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS, VertexTypeEnum.ARTIFACTS,
+ null, JsonPresentationFields.ARTIFACT_LABEL);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.removeArifactFromResource(
+ INSTANCE_ID, "instanceId", NodeTypeEnum.Resource, false);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void removeArtifactFromResource_Mandatory() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName2("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(StorageOperationStatus.OK).when(testInstance).deleteToscaDataElement(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS, VertexTypeEnum.ARTIFACTS,
+ null, JsonPresentationFields.ARTIFACT_LABEL);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.removeArifactFromResource(
+ INSTANCE_ID, "instanceId", NodeTypeEnum.Resource, true);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void removeArtifactFromResource_NotFound() {
+ doReturn(Either.right(StorageOperationStatus.NOT_FOUND)).when(testInstance).getArtifactById(INSTANCE_ID, INSTANCE_ID);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.removeArifactFromResource(
+ INSTANCE_ID, "instanceId", NodeTypeEnum.Resource, false);
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void removeArtifactFromResource_NotFound2() {
+ doReturn(Either.right(StorageOperationStatus.NOT_FOUND)).when(testInstance).removeArtifactOnGraph(INSTANCE_ID, INSTANCE_ID,
+ NodeTypeEnum.Resource, false);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.removeArifactFromResource(
+ INSTANCE_ID, "instanceId", NodeTypeEnum.Resource, false);
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void getArtifacts() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName2("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+
+ Either<Map<String, ArtifactDefinition>, StorageOperationStatus> ret = testInstance.getArtifacts(INSTANCE_ID, NodeTypeEnum.Resource,
+ ArtifactGroupTypeEnum.INFORMATIONAL, INSTANCE_ID);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getArtifacts_NotFound() {
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+
+ Either<Map<String, ArtifactDefinition>, StorageOperationStatus> ret = testInstance.getArtifacts(INSTANCE_ID, NodeTypeEnum.Resource,
+ ArtifactGroupTypeEnum.INFORMATIONAL, INSTANCE_ID);
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void getArtifacts2() {
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName2("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+
+ Either<Map<String, ArtifactDefinition>, StorageOperationStatus> ret = testInstance.getArtifacts(INSTANCE_ID);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void addHeatEnvArtifact() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ ArtifactDefinition artifactDefHeat = new ArtifactDefinition();
+ artifactDefHeat.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(StorageOperationStatus.OK).when(testInstance).updateToscaDataOfToscaElement(Mockito.anyString(),
+ Mockito.any(), Mockito.any(), (List<ToscaDataDefinition>) Mockito.any(), Mockito.any());
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.addHeatEnvArtifact(artifactDef, artifactDefHeat,
+ resource, NodeTypeEnum.Resource, false, INSTANCE_ID);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void getHeatArtifactByHeatEnvId() {
+ Map<String, InterfaceDataDefinition> interfaceDefinitions = getInterfaceDataDefinitionsByName("artifactDefId");
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ ArtifactDefinition artifactDefHeat = new ArtifactDefinition();
+ artifactDefHeat.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.TOSCA_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.SERVICE_API_ARTIFACTS);
+ doReturn(Either.left(interfaceDefinitions)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.INTERFACE);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.getHeatArtifactByHeatEnvId(
+ INSTANCE_ID, artifactDefHeat, "containerId", ComponentTypeEnum.RESOURCE);
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void updateHeatEnvArtifact() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setUniqueId("artifactId");
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ ArtifactDefinition artifactDefHeat = new ArtifactDefinition();
+ artifactDefHeat.setUniqueId("newArtifactId");
+ artifactDefHeat.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(StorageOperationStatus.OK).when(testInstance).updateToscaDataOfToscaElement(Mockito.anyString(),
+ Mockito.any(), Mockito.any(), (List<ToscaDataDefinition>) Mockito.any(), Mockito.any());
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.updateHeatEnvArtifact(
+ resource, artifactDef, "artifactId", "newArtifactId", NodeTypeEnum.Resource, INSTANCE_ID);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void updateHeatEnvArtifact_NotFound() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setUniqueId("artifactId");
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ ArtifactDefinition artifactDefHeat = new ArtifactDefinition();
+ artifactDefHeat.setUniqueId("newArtifactId");
+ artifactDefHeat.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.updateHeatEnvArtifact(
+ resource, artifactDef, "artifactId", "newArtifactId", NodeTypeEnum.Resource, INSTANCE_ID);
+
+ assertTrue(ret.isRight());
+ }
+
+ @Test
+ public void updateHeatEnvArtifactOnInstance() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setUniqueId("artifactId");
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ ArtifactDefinition artifactDefHeat = new ArtifactDefinition();
+ artifactDefHeat.setUniqueId("newArtifactId");
+ artifactDefHeat.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.DEPLOYMENT_ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(StorageOperationStatus.OK).when(testInstance).updateToscaDataOfToscaElement(Mockito.anyString(),
+ Mockito.any(), Mockito.any(), (List<ToscaDataDefinition>) Mockito.any(), Mockito.any());
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.updateHeatEnvArtifactOnInstance(
+ resource, artifactDef, "artifactId", "newArtifactId", NodeTypeEnum.Resource, INSTANCE_ID);
+
+ assertTrue(ret.isLeft());
+ }
+
+ @Test
+ public void updateHeatEnvPlaceholder() {
+ ArtifactDefinition artifactDef = new ArtifactDefinition();
+ artifactDef.setArtifactGroupType(ArtifactGroupTypeEnum.INFORMATIONAL);
+ final Resource resource = new Resource();
+ resource.setUniqueId(INSTANCE_ID);
+ Map<String, ArtifactDataDefinition> instanceArtifacts = getMapArtifactsByName("artifactDefId");
+ doReturn(Either.left(instanceArtifacts)).when(testInstance).getDataFromGraph(INSTANCE_ID, EdgeLabelEnum.ARTIFACTS);
+ doReturn(Either.left(false)).when(testInstance).isCloneNeeded(Mockito.any(),
+ Mockito.any());
+ Map<String, ArtifactDefinition> artMap = new HashMap<>();
+ artMap.put(INSTANCE_ID, artifactDef);
+ doReturn(StorageOperationStatus.OK).when(testInstance).updateToscaDataOfToscaElement(Mockito.anyString(),
+ Mockito.any(), Mockito.any(), (List<ToscaDataDefinition>) Mockito.any(), Mockito.any());
+ doReturn(Either.left(artifactDef)).when(testInstance).updateArtifactOnGraph(resource,
+ artifactDef, NodeTypeEnum.Resource, null, INSTANCE_ID, false,
+ false);
+
+ Either<ArtifactDefinition, StorageOperationStatus> ret = testInstance.updateHeatEnvPlaceholder(
+ artifactDef, resource, NodeTypeEnum.Resource);
+
+ assertTrue(ret.isLeft());
+ }
+