[SDC-29] rebase continue work to align source
[sdc.git] / asdc-tests / src / main / java / org / openecomp / sdc / ci / tests / execute / imports / FilteredDataByParamsComponentServletTest.java
1 package org.openecomp.sdc.ci.tests.execute.imports;
2
3 import static org.testng.AssertJUnit.assertEquals;
4
5 import java.nio.file.Files;
6 import java.nio.file.Path;
7 import java.nio.file.Paths;
8 import java.util.ArrayList;
9 import java.util.Collections;
10 import java.util.List;
11
12 import org.apache.commons.codec.binary.Base64;
13 import org.junit.rules.TestName;
14 import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
15 import org.openecomp.sdc.be.model.ArtifactDefinition;
16 import org.openecomp.sdc.be.model.ComponentInstance;
17 import org.openecomp.sdc.be.model.Resource;
18 import org.openecomp.sdc.be.model.User;
19 import org.openecomp.sdc.be.ui.model.UiComponentDataTransfer;
20 import org.openecomp.sdc.be.ui.model.UiResourceDataTransfer;
21 import org.openecomp.sdc.ci.tests.api.ComponentBaseTest;
22 import org.openecomp.sdc.ci.tests.datatypes.ImportReqDetails;
23 import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
24 import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
25 import org.openecomp.sdc.ci.tests.utils.general.ElementFactory;
26 import org.openecomp.sdc.ci.tests.utils.rest.BaseRestUtils;
27 import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
28 import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
29 import org.testng.annotations.Test;
30
31
32
33 public class FilteredDataByParamsComponentServletTest extends ComponentBaseTest{
34
35         private static final String CSAR_NAME = "LDSA1_with_inputs.csar";
36         private static final String COMPONENT_INSTANCES = "include=componentInstances";
37         private static final String COMPONENT_INSTANCES_RELATIONS = "include=componentInstancesRelations";
38         private static final String DEPLOYMENT_ARTIFACTS = "include=deploymentArtifacts";
39         private static final String INFORMATIONAL_ARTIFACTS = "include=artifacts";
40         private static final String METADATA = "include=metadata";
41         public static TestName name = new TestName();
42
43
44         
45         protected User designerDetails = ElementFactory.getDefaultUser(UserRoleEnum.DESIGNER);
46         
47         public FilteredDataByParamsComponentServletTest() {
48                 super(name, ImportCsarResourceTest.class.getName());
49         }
50
51         
52         @Test
53         public void getComponentInstancesAndComponentInstancesRelationsTest() throws Exception {
54                 Resource resource = ResourceRestUtils.importResourceFromCsar(CSAR_NAME);
55                 List<String> parameters = new ArrayList<>();
56                 parameters.add(COMPONENT_INSTANCES);
57                 parameters.add(COMPONENT_INSTANCES_RELATIONS);
58                 // create UiComponentDataTransfer and parse the ComponentInstancesRelations into it
59                 RestResponse resourceGetResponse = ResourceRestUtils.getResourceFilteredDataByParams(designerDetails, resource.getUniqueId() , parameters);
60                 UiComponentDataTransfer uiComponentWithComponentInstancesAndRelations = ResponseParser.parseToObjectUsingMapper(resourceGetResponse.getResponse() , UiComponentDataTransfer.class);
61                 
62                 uiComponentWithComponentInstancesAndRelations.getComponentInstances().stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId()));
63                 resource.getComponentInstances().stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId()));
64                 
65                 for (int i = 0 ; i <  resource.getComponentInstances().size() ; i++){
66                         assertEquals(uiComponentWithComponentInstancesAndRelations.getComponentInstances().get(i).getUniqueId() ,resource.getComponentInstances().get(i).getUniqueId());
67                 }
68                 assertEquals(uiComponentWithComponentInstancesAndRelations.getComponentInstancesRelations().size() , resource.getComponentInstancesRelations().size());
69         }
70
71         
72         @Test
73         public void getComponentDeploymentAndInformationalArtifacts() throws Exception {
74                 Resource resource = ResourceRestUtils.importResourceFromCsar(CSAR_NAME);
75                 List<String> parameters = new ArrayList<>();
76                 parameters.add(DEPLOYMENT_ARTIFACTS);
77                 parameters.add(INFORMATIONAL_ARTIFACTS);
78
79                 // create new UiComponentData transfer and parse the artifacts into it
80                 RestResponse resourceGetResponse = ResourceRestUtils.getResourceFilteredDataByParams(designerDetails, resource.getUniqueId() , parameters);
81                 UiComponentDataTransfer uiComponentWithArtifacts = ResponseParser.parseToObjectUsingMapper(resourceGetResponse.getResponse() , UiComponentDataTransfer.class);
82                 
83                 List<ArtifactDefinition> deploymentArtifactsFromResource = new ArrayList<ArtifactDefinition>(resource.getDeploymentArtifacts().values());
84                 List<ArtifactDefinition> deploymentArtifactsFromUiComponent = new ArrayList<ArtifactDefinition>(uiComponentWithArtifacts.getDeploymentArtifacts().values());
85                 List<ArtifactDefinition> informationalArtifactsFromResource = new ArrayList<ArtifactDefinition>(resource.getArtifacts().values());
86                 List<ArtifactDefinition> informationalArtifactsFromUiComponent = new ArrayList<ArtifactDefinition>(uiComponentWithArtifacts.getArtifacts().values());
87                 
88                 deploymentArtifactsFromResource.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId()));
89                 deploymentArtifactsFromUiComponent.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId()));
90                 informationalArtifactsFromResource.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId()));
91                 informationalArtifactsFromUiComponent.stream().sorted((object1, object2) -> object1.getUniqueId().compareTo(object2.getUniqueId()));
92                 
93                 for (int i = 0 ; i <  deploymentArtifactsFromResource.size() ; i++){
94                         assertEquals(deploymentArtifactsFromResource.get(i).getUniqueId() , deploymentArtifactsFromUiComponent.get(i).getUniqueId());
95                 }
96                 
97                 for (int i = 0 ; i <  informationalArtifactsFromResource.size() ; i++){
98                         assertEquals(informationalArtifactsFromResource.get(i).getUniqueId() , informationalArtifactsFromUiComponent.get(i).getUniqueId());
99                 }
100         }
101         
102         
103         @Test
104         public void getComponentMetadataTest() throws Exception {
105                 
106                 Resource resource = ResourceRestUtils.importResourceFromCsar(CSAR_NAME);
107                 List<String> parameters = new ArrayList<>();
108                 parameters.add(METADATA);
109
110                 // create new UiResourceDataTransfer and parse the metadata into it
111                 RestResponse resourceGetResponse = ResourceRestUtils.getResourceFilteredDataByParams(designerDetails, resource.getUniqueId() , parameters);
112                 UiResourceDataTransfer uiResourceWithMetadata = ResponseParser.parseToObjectUsingMapper(resourceGetResponse.getResponse(), UiResourceDataTransfer.class);
113                 
114                 // assert that the metadata is equal
115                 assertEquals(uiResourceWithMetadata.getMetadata().getName(), resource.getName());
116                 assertEquals(uiResourceWithMetadata.getMetadata().getVersion() , resource.getVersion());
117                 assertEquals(uiResourceWithMetadata.getMetadata().getUniqueId() , resource.getUniqueId());
118                 assertEquals(uiResourceWithMetadata.getMetadata().getUUID(), resource.getUUID());
119         }
120         
121
122
123
124 }