1 package org.openecomp.sdc.be.components.distribution.engine;
3 import java.util.HashMap;
4 import java.util.LinkedList;
9 import org.openecomp.sdc.be.components.BeConfDependentTest;
10 import org.openecomp.sdc.be.model.ArtifactDefinition;
11 import org.openecomp.sdc.be.model.ComponentInstance;
12 import org.openecomp.sdc.be.model.Resource;
13 import org.openecomp.sdc.be.model.Service;
14 import org.openecomp.sdc.be.model.category.CategoryDefinition;
15 import org.openecomp.sdc.be.model.operations.impl.InterfaceLifecycleOperation;
16 import org.openecomp.sdc.common.api.ArtifactTypeEnum;
18 import mockit.Deencapsulation;
20 public class ServiceDistributionArtifactsBuilderTest extends BeConfDependentTest {
22 private ServiceDistributionArtifactsBuilder createTestSubject() {
23 return new ServiceDistributionArtifactsBuilder();
27 public void testGetInterfaceLifecycleOperation() throws Exception {
28 ServiceDistributionArtifactsBuilder testSubject;
29 InterfaceLifecycleOperation result;
32 testSubject = createTestSubject();
33 result = testSubject.getInterfaceLifecycleOperation();
37 public void testSetInterfaceLifecycleOperation() throws Exception {
38 ServiceDistributionArtifactsBuilder testSubject;
39 InterfaceLifecycleOperation interfaceLifecycleOperation = null;
42 testSubject = createTestSubject();
43 testSubject.setInterfaceLifecycleOperation(interfaceLifecycleOperation);
47 public void testResolveWorkloadContext() throws Exception {
48 ServiceDistributionArtifactsBuilder testSubject;
49 String workloadContext = "";
53 testSubject = createTestSubject();
54 result = Deencapsulation.invoke(testSubject, "resolveWorkloadContext", new Object[] { workloadContext });
58 public void testBuildResourceInstanceForDistribution() throws Exception {
59 ServiceDistributionArtifactsBuilder testSubject;
60 Service service = new Service();
61 String distributionId = "";
62 String workloadContext = "";
63 INotificationData result;
66 testSubject = createTestSubject();
67 workloadContext = "mock";
68 result = testSubject.buildResourceInstanceForDistribution(service, distributionId, workloadContext);
71 testSubject = createTestSubject();
72 workloadContext = null;
73 result = testSubject.buildResourceInstanceForDistribution(service, distributionId, workloadContext);
77 public void testBuildServiceForDistribution() throws Exception {
78 ServiceDistributionArtifactsBuilder testSubject;
79 INotificationData notificationData = new INotificationDataMock();
80 Service service = new Service();
81 service.setDeploymentArtifacts(new HashMap<>());
82 service.setToscaArtifacts(new HashMap<>());
83 INotificationData result;
86 testSubject = createTestSubject();
87 result = testSubject.buildServiceForDistribution(notificationData, service);
90 @Test(expected = NullPointerException.class)
91 public void testConvertServiceArtifactsToArtifactInfo() throws Exception {
92 ServiceDistributionArtifactsBuilder testSubject;
93 Service service = new Service();
94 service.setDeploymentArtifacts(new HashMap<>());
95 Map<String, ArtifactDefinition> toscaArtifacts = new HashMap<>();
96 ArtifactDefinition artifactDefinition = new ArtifactDefinition();
97 ArtifactDefinition artifactDefinition2 = new ArtifactDefinition();
98 artifactDefinition.setArtifactType(ArtifactTypeEnum.TOSCA_TEMPLATE.getType());
99 artifactDefinition2.setArtifactType(ArtifactTypeEnum.TOSCA_CSAR.getType());
100 toscaArtifacts.put("mock", artifactDefinition);
101 toscaArtifacts.put("mock2", artifactDefinition2);
102 service.setToscaArtifacts(new HashMap<>());
103 List<ArtifactInfoImpl> result;
106 testSubject = createTestSubject();
107 result = Deencapsulation.invoke(testSubject, "convertServiceArtifactsToArtifactInfo", service);
108 service.setToscaArtifacts(toscaArtifacts);
109 result = Deencapsulation.invoke(testSubject, "convertServiceArtifactsToArtifactInfo", service);
112 @Test(expected=NullPointerException.class)
113 public void testConvertRIsToJsonContanier() throws Exception {
114 ServiceDistributionArtifactsBuilder testSubject;
115 Service service = new Service();
116 List<ComponentInstance> resourceInstances = new LinkedList<>();
117 List<JsonContainerResourceInstance> result;
120 testSubject = createTestSubject();
121 result = Deencapsulation.invoke(testSubject, "convertRIsToJsonContanier", service);
123 resourceInstances.add(new ComponentInstance());
124 service.setComponentInstances(resourceInstances);
125 result = Deencapsulation.invoke(testSubject, "convertRIsToJsonContanier", service);
129 public void testFillJsonContainer() throws Exception {
130 ServiceDistributionArtifactsBuilder testSubject;
131 JsonContainerResourceInstance jsonContainer = new JsonContainerResourceInstance(new ComponentInstance(),
133 Resource resource = new Resource();
136 testSubject = createTestSubject();
137 Deencapsulation.invoke(testSubject, "fillJsonContainer", jsonContainer, resource);
141 public void testConvertToArtifactsInfoImpl() throws Exception {
142 ServiceDistributionArtifactsBuilder testSubject;
143 Service service = new Service();
144 ComponentInstance resourceInstance = new ComponentInstance();
145 List<ArtifactInfoImpl> result;
148 testSubject = createTestSubject();
149 result = Deencapsulation.invoke(testSubject, "convertToArtifactsInfoImpl", service, resourceInstance);
153 public void testSetCategories() throws Exception {
154 ServiceDistributionArtifactsBuilder testSubject;
155 JsonContainerResourceInstance jsonContainer = null;
156 List<CategoryDefinition> categories = null;
159 testSubject = createTestSubject();
161 Deencapsulation.invoke(testSubject, "setCategories",
162 new Object[] { JsonContainerResourceInstance.class, List.class });
166 public void testGetArtifactsWithPayload() throws Exception {
167 ServiceDistributionArtifactsBuilder testSubject;
168 ComponentInstance resourceInstance = new ComponentInstance();
169 Map<String, ArtifactDefinition> deploymentArtifacts = new HashMap<>();
170 resourceInstance.setDeploymentArtifacts(deploymentArtifacts);
171 List<ArtifactDefinition> result;
174 testSubject = createTestSubject();
175 result = Deencapsulation.invoke(testSubject, "getArtifactsWithPayload", resourceInstance);
176 deploymentArtifacts.put("mock", new ArtifactDefinition());
177 result = Deencapsulation.invoke(testSubject, "getArtifactsWithPayload", resourceInstance);
181 public void testBuildResourceInstanceArtifactUrl() throws Exception {
182 Service service = new Service();
183 service.setSystemName("mock");
184 service.setVersion("mock");
185 ComponentInstance resourceInstance = new ComponentInstance();
186 resourceInstance.setNormalizedName("mock");
187 String artifactName = "mock";
191 result = ServiceDistributionArtifactsBuilder.buildResourceInstanceArtifactUrl(service, resourceInstance,
196 public void testBuildServiceArtifactUrl() throws Exception {
197 Service service = new Service();
198 String artifactName = "mock";
202 result = ServiceDistributionArtifactsBuilder.buildServiceArtifactUrl(service, artifactName);
206 public void testVerifyServiceContainsDeploymentArtifacts() throws Exception {
207 ServiceDistributionArtifactsBuilder testSubject;
208 Service service = new Service();
212 testSubject = createTestSubject();
213 result = testSubject.verifyServiceContainsDeploymentArtifacts(service);
214 Map<String, ArtifactDefinition> deploymentArtifacts = new HashMap<>();
215 deploymentArtifacts.put("mock", new ArtifactDefinition());
216 service.setDeploymentArtifacts(deploymentArtifacts);
217 result = testSubject.verifyServiceContainsDeploymentArtifacts(service);
218 List<ComponentInstance> resourceInstances = new LinkedList<>();
219 resourceInstances.add(new ComponentInstance());
220 service.setComponentInstances(resourceInstances);
221 service.setDeploymentArtifacts(null);
222 result = testSubject.verifyServiceContainsDeploymentArtifacts(service);
226 public void testIsContainsPayload() throws Exception {
227 ServiceDistributionArtifactsBuilder testSubject;
228 Map<String, ArtifactDefinition> deploymentArtifacts = null;
232 testSubject = createTestSubject();
233 result = Deencapsulation.invoke(testSubject, "isContainsPayload", new Object[] { Map.class });
236 private class INotificationDataMock implements INotificationData {
239 public String getDistributionID() {
240 // TODO Auto-generated method stub
245 public String getServiceName() {
246 // TODO Auto-generated method stub
251 public String getServiceVersion() {
252 // TODO Auto-generated method stub
257 public String getServiceUUID() {
258 // TODO Auto-generated method stub
263 public String getServiceDescription() {
264 // TODO Auto-generated method stub
269 public String getServiceInvariantUUID() {
270 // TODO Auto-generated method stub
275 public List<JsonContainerResourceInstance> getResources() {
276 // TODO Auto-generated method stub
281 public List<ArtifactInfoImpl> getServiceArtifacts() {
282 // TODO Auto-generated method stub
287 public String getWorkloadContext() {
288 // TODO Auto-generated method stub
293 public void setDistributionID(String distributionId) {
294 // TODO Auto-generated method stub
299 public void setServiceName(String serviceName) {
300 // TODO Auto-generated method stub
305 public void setServiceVersion(String serviceVersion) {
306 // TODO Auto-generated method stub
311 public void setServiceUUID(String serviceUUID) {
312 // TODO Auto-generated method stub
317 public void setServiceDescription(String serviceDescription) {
318 // TODO Auto-generated method stub
323 public void setServiceInvariantUUID(String serviceInvariantUuid) {
324 // TODO Auto-generated method stub
329 public void setResources(List<JsonContainerResourceInstance> resource) {
330 // TODO Auto-generated method stub
335 public void setServiceArtifacts(List<ArtifactInfoImpl> artifacts) {
336 // TODO Auto-generated method stub
341 public void setWorkloadContext(String workloadContext) {
342 // TODO Auto-generated method stub