2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
19 * Modifications copyright (c) 2019 Nokia
20 * ================================================================================
22 package org.openecomp.sdc.be.info;
24 import org.junit.Test;
25 import org.openecomp.sdc.be.datatypes.elements.ArtifactDataDefinition;
26 import org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields;
27 import org.openecomp.sdc.be.model.ArtifactDefinition;
29 import java.util.ArrayList;
30 import java.util.Collections;
31 import java.util.List;
33 import static com.google.code.beanmatchers.BeanMatchers.hasValidBeanConstructor;
34 import static org.hamcrest.CoreMatchers.is;
35 import static org.hamcrest.MatcherAssert.assertThat;
37 public class MergedArtifactInfoTest {
39 private static final String NAME = "NAME";
40 private static final String FILE = "FILE";
41 private static final String ENV = "ENV";
42 private static final String URL = "URL";
43 private static final String CHECKSUM = "CHECKSUM";
44 private static final String CREATOR = "CREATOR";
45 private static final String DISPLAY_NAME = "DISPLAY_NAME";
46 private static final String LABEL = "LABEL";
47 private static final String REF = "REF";
48 private static final String REPOSITORY = "REPOSITORY";
49 private static final String TYPE = "TYPE";
50 private static final String UUID = "UUID";
51 private static final String ES_ID = "ES_ID";
52 private static final String UNIQUE_ID = "UNIQUE_ID";
53 private static final String GENERATED_FROM = "GENERATED_FROM";
56 public void shouldHaveValidDefaultConstructor() {
57 assertThat(MergedArtifactInfo.class, hasValidBeanConstructor());
61 public void shouldCorrectlySetCreatedArtifact() {
62 MergedArtifactInfo mergedArtifactInfo = createMergedArtifactInfo();
63 assertJsonArtifactTemplate(mergedArtifactInfo.getJsonArtifactTemplate());
64 assertCreatedArtifact(mergedArtifactInfo.getCreatedArtifact());
68 public void shouldReturnListToDisassociateArtifactFromGroup() {
69 MergedArtifactInfo mergedArtifactInfo = createMergedArtifactInfo();
70 mergedArtifactInfo.getCreatedArtifact().get(0).setToscaPresentationValue(JsonPresentationFields.GENERATED_FROM_ID,
72 List<ArtifactDefinition> listToDissotiateArtifactFromGroup = mergedArtifactInfo
73 .getListToDissotiateArtifactFromGroup(Collections.emptyList());
74 assertThat(listToDissotiateArtifactFromGroup.size(), is(1));
75 assertThat(listToDissotiateArtifactFromGroup.get(0).getUniqueId(), is(UNIQUE_ID));
79 public void shouldReturnEmptyListToDisassociateArtifactFromGroupWhenGeneratedFormIdIsEmpty() {
80 MergedArtifactInfo mergedArtifactInfo = createMergedArtifactInfo();
81 List<ArtifactDefinition> artifactDefinitions = new ArrayList<>();
82 artifactDefinitions.add(new ArtifactDefinition(createArtifactDataDefinition()));
83 List<ArtifactDefinition> listToDissotiateArtifactFromGroup = mergedArtifactInfo
84 .getListToDissotiateArtifactFromGroup(artifactDefinitions);
85 assertThat(listToDissotiateArtifactFromGroup.isEmpty(), is(true));
88 private MergedArtifactInfo createMergedArtifactInfo() {
89 MergedArtifactInfo mergedArtifactInfo = new MergedArtifactInfo();
90 List<ArtifactTemplateInfo> relatedArtifactsInfo = new ArrayList<>();
91 relatedArtifactsInfo.add(new ArtifactTemplateInfo(TYPE, FILE, ENV, Collections.emptyList()));
92 mergedArtifactInfo.setJsonArtifactTemplate(new ArtifactTemplateInfo(NAME, FILE, ENV, relatedArtifactsInfo));
93 List<ArtifactDefinition> createdArtifact = new ArrayList<>();
94 createdArtifact.add(new ArtifactDefinition(createArtifactDataDefinition()));
95 mergedArtifactInfo.setCreatedArtifact(createdArtifact);
96 return mergedArtifactInfo;
99 private ArtifactDataDefinition createArtifactDataDefinition() {
100 ArtifactDataDefinition artifactDataDefinition = new ArtifactDataDefinition();
101 artifactDataDefinition.setApiUrl(URL);
102 artifactDataDefinition.setUniqueId(UNIQUE_ID);
103 artifactDataDefinition.setArtifactChecksum(CHECKSUM);
104 artifactDataDefinition.setArtifactCreator(CREATOR);
105 artifactDataDefinition.setArtifactDisplayName(DISPLAY_NAME);
106 artifactDataDefinition.setArtifactLabel(LABEL);
107 artifactDataDefinition.setArtifactName(NAME);
108 artifactDataDefinition.setArtifactRef(REF);
109 artifactDataDefinition.setArtifactRepository(REPOSITORY);
110 artifactDataDefinition.setArtifactType(TYPE);
111 artifactDataDefinition.setArtifactUUID(UUID);
112 artifactDataDefinition.setEsId(ES_ID);
113 return artifactDataDefinition;
116 private void assertCreatedArtifact(List<ArtifactDefinition> artifactDefinitions){
117 assertThat(artifactDefinitions.size(), is(1));
118 ArtifactDefinition artifactDefinition = artifactDefinitions.get(0);
119 assertThat(artifactDefinition.getArtifactType(), is(TYPE));
120 assertThat(artifactDefinition.getArtifactRef(), is(REF));
121 assertThat(artifactDefinition.getArtifactName(), is(NAME));
122 assertThat(artifactDefinition.getArtifactRepository(), is(REPOSITORY));
123 assertThat(artifactDefinition.getArtifactChecksum(), is(CHECKSUM));
124 assertThat(artifactDefinition.getEsId(), is(ES_ID));
125 assertThat(artifactDefinition.getArtifactLabel(), is(LABEL));
126 assertThat(artifactDefinition.getArtifactCreator(), is(CREATOR));
127 assertThat(artifactDefinition.getArtifactDisplayName(), is(DISPLAY_NAME));
128 assertThat(artifactDefinition.getApiUrl(), is(URL));
129 assertThat(artifactDefinition.getServiceApi(), is(false));
130 assertThat(artifactDefinition.getArtifactUUID(), is(UUID));
133 private void assertJsonArtifactTemplate(ArtifactTemplateInfo artifactTemplateInfo){
134 assertThat(artifactTemplateInfo.getType(), is(NAME));
135 assertThat(artifactTemplateInfo.getFileName(), is(FILE));
136 assertThat(artifactTemplateInfo.getEnv(), is(ENV));