2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2019 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=========================================================
21 package org.openecomp.sdc.be.datamodel.utils;
24 import org.junit.Test;
25 import org.openecomp.sdc.be.info.ArtifactTemplateInfo;
26 import org.openecomp.sdc.be.model.ArtifactDefinition;
27 import org.openecomp.sdc.be.model.HeatParameterDefinition;
28 import org.openecomp.sdc.be.model.operations.impl.ArtifactOperation;
29 import org.openecomp.sdc.common.api.ArtifactGroupTypeEnum;
31 import java.util.HashMap;
32 import java.util.LinkedList;
33 import java.util.List;
35 import java.util.ArrayList;
37 import static org.junit.Assert.assertTrue;
39 public class ArtifactUtilsTest {
41 private static final String ARTIFACT_NAME = "myHeatArtifact";
44 @javax.annotation.Resource
45 private ArtifactOperation artifactOperation;
48 private static String RESOURCE_ID = "resourceId";
50 private static String USER_ID = "muUserId";
51 private static String CATEGORY_NAME = "category/mycategory";
54 private ArtifactUtils createTestSubject() {
55 return new ArtifactUtils();
59 public void testFindMasterArtifact() throws Exception {
60 Map<String, ArtifactDefinition> deploymentArtifact = new HashMap<>();
61 List<ArtifactDefinition> artifacts = new LinkedList<>();
62 List<String> artifactsList = new LinkedList<>();
63 ArtifactDefinition result;
66 result = ArtifactUtils.findMasterArtifact(deploymentArtifact, artifacts, artifactsList);
70 public void testFindMasterArtifactWithArtifactDef() throws Exception {
71 ArtifactDefinition artifactWithHeat = createResourceWithHeat();
72 Map<String, ArtifactDefinition> deploymentArtifact = new HashMap<>();
73 deploymentArtifact.put("artifactId",artifactWithHeat);
74 List<ArtifactDefinition> artifacts = new LinkedList<>();
75 artifacts.add(artifactWithHeat);
76 List<String> artifactsList = new LinkedList<>();
77 artifactsList.add("artifactId");
78 ArtifactDefinition result;
81 result = ArtifactUtils.findMasterArtifact(deploymentArtifact, artifacts, artifactsList);
85 public void testBuildJsonForUpdateArtifact() throws Exception {
86 String artifactId = "";
87 String artifactName = "";
88 String artifactType = "";
89 ArtifactGroupTypeEnum artifactGroupType = ArtifactGroupTypeEnum.DEPLOYMENT;
91 String displayName = "";
92 String description = "";
93 byte[] artifactContentent = new byte[] { ' ' };
94 List<ArtifactTemplateInfo> updatedRequiredArtifacts = null;
95 boolean isFromCsar = false;
96 Map<String, Object> result;
100 result = ArtifactUtils.buildJsonForUpdateArtifact(artifactId, artifactName, artifactType, artifactGroupType,
101 label, displayName, description, artifactContentent, updatedRequiredArtifacts, isFromCsar);
105 public void testBuildJsonForArtifact() throws Exception {
106 ArtifactTemplateInfo artifactTemplateInfo = new ArtifactTemplateInfo();
107 artifactTemplateInfo.setFileName("mock.mock.heat");
108 byte[] artifactContentent = new byte[] { ' ' };
109 int atrifactLabelCounter = 0;
110 Map<String, Object> result;
113 result = ArtifactUtils.buildJsonForArtifact(artifactTemplateInfo, artifactContentent, atrifactLabelCounter,false);
117 public void testFindArtifactInList() throws Exception {
118 List<ArtifactDefinition> createdArtifacts = new LinkedList<>();
119 String artifactId = "mock";
120 ArtifactDefinition result;
123 result = ArtifactUtils.findArtifactInList(createdArtifacts, artifactId);
127 public void testFindArtifactInListwithArtifactList() throws Exception {
128 ArtifactDefinition artifactWithHeat = createResourceWithHeat();
129 List<ArtifactDefinition> createdArtifacts = new LinkedList<>();
130 createdArtifacts.add(artifactWithHeat);
131 String artifactId = "artifactId";
132 ArtifactDefinition result;
135 result = ArtifactUtils.findArtifactInList(createdArtifacts, artifactId);
138 public ArtifactDefinition createResourceWithHeat() {
139 ArtifactDefinition artifactDefinition = createArtifactDefinition(USER_ID, RESOURCE_ID, ARTIFACT_NAME);
140 artifactDefinition.setArtifactType("HEAT");
141 artifactDefinition.setArtifactGroupType(ArtifactGroupTypeEnum.DEPLOYMENT);
143 List<HeatParameterDefinition> heatParams = new ArrayList<>();
144 HeatParameterDefinition heatParam = new HeatParameterDefinition();
145 heatParam.setCurrentValue("11");
146 heatParam.setDefaultValue("22");
147 heatParam.setDescription("desc");
148 heatParam.setName("myParam");
149 heatParam.setType("number");
150 heatParams.add(heatParam);
151 artifactDefinition.setListHeatParameters(heatParams);
152 return artifactDefinition;
157 private ArtifactDefinition createArtifactDefinition(String userId, String serviceId, String artifactName) {
158 ArtifactDefinition artifactInfo = new ArtifactDefinition();
160 artifactInfo.setArtifactName(artifactName + ".sh");
161 artifactInfo.setArtifactType("SHELL");
162 artifactInfo.setDescription("hdkfhskdfgh");
163 artifactInfo.setArtifactChecksum("UEsDBAoAAAAIAAeLb0bDQz");
165 artifactInfo.setUserIdCreator(userId);
166 String fullName = "Jim H";
167 artifactInfo.setUpdaterFullName(fullName);
168 long time = System.currentTimeMillis();
169 artifactInfo.setCreatorFullName(fullName);
170 artifactInfo.setCreationDate(time);
171 artifactInfo.setLastUpdateDate(time);
172 artifactInfo.setUserIdLastUpdater(userId);
173 artifactInfo.setArtifactLabel(artifactName);
174 artifactInfo.setUniqueId("artifactId");