summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorsebdet <sebastien.determe@intl.att.com>2020-01-28 16:28:21 +0100
committersebdet <sebastien.determe@intl.att.com>2020-01-30 13:36:45 +0100
commitb9a6531c7a5cfc5a9a544a21fe8c47914be9699b (patch)
tree1ea3d0b0ead027878083e1dbebb3e2da24efae00 /src
parente0a8ab9bd315aecde32e0163c9d233ec29df9d51 (diff)
Change the Csar installer
Change the csar installer so that it installs a loop template instead of a loop object Issue-ID: CLAMP-592 Change-Id: I757f6411ce959573fcb3a82e48359a1a44f87410 Signed-off-by: sebdet <sebastien.determe@intl.att.com>
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/onap/clamp/loop/CsarInstaller.java94
-rw-r--r--src/main/java/org/onap/clamp/loop/Loop.java16
-rw-r--r--src/main/java/org/onap/clamp/loop/deploy/DcaeDeployParameters.java25
-rw-r--r--src/main/java/org/onap/clamp/loop/service/Service.java14
-rw-r--r--src/main/java/org/onap/clamp/loop/template/LoopElementModel.java24
-rw-r--r--src/main/java/org/onap/clamp/loop/template/LoopTemplate.java52
-rw-r--r--src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java75
-rw-r--r--src/test/java/org/onap/clamp/loop/DcaeComponentTest.java2
-rw-r--r--src/test/java/org/onap/clamp/loop/DeployFlowTestItCase.java76
-rw-r--r--src/test/java/org/onap/clamp/loop/LoopControllerTestItCase.java2
-rw-r--r--src/test/java/org/onap/clamp/loop/LoopLogServiceTestItCase.java4
-rw-r--r--src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java4
-rw-r--r--src/test/java/org/onap/clamp/loop/LoopServiceTestItCase.java3
-rw-r--r--src/test/java/org/onap/clamp/loop/LoopToJsonTest.java3
-rw-r--r--src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java9
15 files changed, 232 insertions, 171 deletions
diff --git a/src/main/java/org/onap/clamp/loop/CsarInstaller.java b/src/main/java/org/onap/clamp/loop/CsarInstaller.java
index ab8069f37..013d3419d 100644
--- a/src/main/java/org/onap/clamp/loop/CsarInstaller.java
+++ b/src/main/java/org/onap/clamp/loop/CsarInstaller.java
@@ -25,10 +25,8 @@ package org.onap.clamp.loop;
import com.att.eelf.configuration.EELFLogger;
import com.att.eelf.configuration.EELFManager;
-import com.google.gson.JsonObject;
import java.io.IOException;
-import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Map.Entry;
@@ -43,12 +41,12 @@ import org.onap.clamp.clds.sdc.controller.installer.ChainGenerator;
import org.onap.clamp.clds.sdc.controller.installer.CsarHandler;
import org.onap.clamp.clds.sdc.controller.installer.MicroService;
import org.onap.clamp.clds.util.drawing.SvgFacade;
-import org.onap.clamp.loop.deploy.DcaeDeployParameters;
import org.onap.clamp.loop.service.CsarServiceInstaller;
import org.onap.clamp.loop.service.Service;
-import org.onap.clamp.policy.Policy;
-import org.onap.clamp.policy.microservice.MicroServicePolicy;
-import org.onap.clamp.policy.operational.OperationalPolicy;
+import org.onap.clamp.loop.template.LoopElementModel;
+import org.onap.clamp.loop.template.LoopTemplate;
+import org.onap.clamp.loop.template.LoopTemplatesRepository;
+import org.onap.clamp.loop.template.PolicyModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
@@ -72,6 +70,9 @@ public class CsarInstaller {
LoopsRepository loopRepository;
@Autowired
+ LoopTemplatesRepository loopTemplatesRepository;
+
+ @Autowired
BlueprintParser blueprintParser;
@Autowired
@@ -98,8 +99,8 @@ public class CsarInstaller {
for (Entry<String, BlueprintArtifact> blueprint : csar.getMapOfBlueprints().entrySet()) {
alreadyInstalled = alreadyInstalled
- && loopRepository.existsById(Loop.generateLoopName(csar.getSdcNotification().getServiceName(),
- csar.getSdcNotification().getServiceVersion(),
+ && loopTemplatesRepository.existsById(LoopTemplate.generateLoopTemplateName(
+ csar.getSdcNotification().getServiceName(), csar.getSdcNotification().getServiceVersion(),
blueprint.getValue().getResourceAttached().getResourceInstanceName(),
blueprint.getValue().getBlueprintArtifactName()));
}
@@ -107,7 +108,7 @@ public class CsarInstaller {
}
/**
- * Install the service and loops from the csar.
+ * Install the service and loop templates from the csar.
*
* @param csar The Csar Handler
* @throws SdcArtifactInstallerException The SdcArtifactInstallerException
@@ -115,25 +116,25 @@ public class CsarInstaller {
*/
public void installTheCsar(CsarHandler csar) throws SdcArtifactInstallerException, InterruptedException {
logger.info("Installing the CSAR " + csar.getFilePath());
- installTheLoop(csar, csarServiceInstaller.installTheService(csar));
+ installTheLoopTemplates(csar, csarServiceInstaller.installTheService(csar));
logger.info("Successfully installed the CSAR " + csar.getFilePath());
}
/**
- * Install the Loop from the csar.
+ * Install the loop templates from the csar.
*
* @param csar The Csar Handler
* @param service The service object that is related to the loop
* @throws SdcArtifactInstallerException The SdcArtifactInstallerException
* @throws InterruptedException The InterruptedException
*/
- public void installTheLoop(CsarHandler csar, Service service)
+ public void installTheLoopTemplates(CsarHandler csar, Service service)
throws SdcArtifactInstallerException, InterruptedException {
try {
logger.info("Installing the Loops");
for (Entry<String, BlueprintArtifact> blueprint : csar.getMapOfBlueprints().entrySet()) {
logger.info("Processing blueprint " + blueprint.getValue().getBlueprintArtifactName());
- loopRepository.save(createLoopFromBlueprint(csar, blueprint.getValue(), service));
+ loopTemplatesRepository.save(createLoopTemplateFromBlueprint(csar, blueprint.getValue(), service));
}
logger.info("Successfully installed the Loops ");
} catch (IOException e) {
@@ -143,63 +144,48 @@ public class CsarInstaller {
}
}
- private Loop createLoopFromBlueprint(CsarHandler csar, BlueprintArtifact blueprintArtifact, Service service)
- throws IOException, ParseException, InterruptedException {
- Loop newLoop = new Loop();
- newLoop.setBlueprint(blueprintArtifact.getDcaeBlueprint());
- newLoop.setName(Loop.generateLoopName(csar.getSdcNotification().getServiceName(),
+ private LoopTemplate createLoopTemplateFromBlueprint(CsarHandler csar, BlueprintArtifact blueprintArtifact,
+ Service service) throws IOException, ParseException, InterruptedException {
+ LoopTemplate newLoopTemplate = new LoopTemplate();
+ newLoopTemplate.setBlueprint(blueprintArtifact.getDcaeBlueprint());
+ newLoopTemplate.setName(LoopTemplate.generateLoopTemplateName(csar.getSdcNotification().getServiceName(),
csar.getSdcNotification().getServiceVersion(),
blueprintArtifact.getResourceAttached().getResourceInstanceName(),
blueprintArtifact.getBlueprintArtifactName()));
- newLoop.setLastComputedState(LoopState.DESIGN);
-
List<MicroService> microServicesChain = chainGenerator
.getChainOfMicroServices(blueprintParser.getMicroServices(blueprintArtifact.getDcaeBlueprint()));
if (microServicesChain.isEmpty()) {
microServicesChain = blueprintParser.fallbackToOneMicroService(blueprintArtifact.getDcaeBlueprint());
}
- newLoop.setModelService(service);
- newLoop.setMicroServicePolicies(
- createMicroServicePolicies(microServicesChain, csar, blueprintArtifact, newLoop));
- newLoop.setOperationalPolicies(createOperationalPolicies(csar, blueprintArtifact, newLoop));
-
- newLoop.setSvgRepresentation(svgFacade.getSvgImage(microServicesChain));
- newLoop.setGlobalPropertiesJson(createGlobalPropertiesJson(blueprintArtifact, newLoop));
-
+ newLoopTemplate.setModelService(service);
+ newLoopTemplate.addLoopElementModels(createMicroServiceModels(microServicesChain, csar, blueprintArtifact));
+ newLoopTemplate.setMaximumInstancesAllowed(0);
+ newLoopTemplate.setSvgRepresentation(svgFacade.getSvgImage(microServicesChain));
DcaeInventoryResponse dcaeResponse = queryDcaeToGetServiceTypeId(blueprintArtifact);
- newLoop.setDcaeBlueprintId(dcaeResponse.getTypeId());
- return newLoop;
+ newLoopTemplate.setDcaeBlueprintId(dcaeResponse.getTypeId());
+ return newLoopTemplate;
}
- private HashSet<OperationalPolicy> createOperationalPolicies(CsarHandler csar, BlueprintArtifact blueprintArtifact,
- Loop newLoop) {
- return new HashSet<>(Arrays.asList(new OperationalPolicy(Policy.generatePolicyName("OPERATIONAL",
- csar.getSdcNotification().getServiceName(), csar.getSdcNotification().getServiceVersion(),
- blueprintArtifact.getResourceAttached().getResourceInstanceName(),
- blueprintArtifact.getBlueprintArtifactName()), newLoop, new JsonObject())));
- }
-
- private HashSet<MicroServicePolicy> createMicroServicePolicies(List<MicroService> microServicesChain,
- CsarHandler csar, BlueprintArtifact blueprintArtifact, Loop newLoop) throws IOException {
- HashSet<MicroServicePolicy> newSet = new HashSet<>();
-
+ private HashSet<LoopElementModel> createMicroServiceModels(List<MicroService> microServicesChain, CsarHandler csar,
+ BlueprintArtifact blueprintArtifact) throws IOException {
+ HashSet<LoopElementModel> newSet = new HashSet<>();
for (MicroService microService : microServicesChain) {
- MicroServicePolicy microServicePolicy = new MicroServicePolicy(
- Policy.generatePolicyName(microService.getName(), csar.getSdcNotification().getServiceName(),
- csar.getSdcNotification().getServiceVersion(),
- blueprintArtifact.getResourceAttached().getResourceInstanceName(),
- blueprintArtifact.getBlueprintArtifactName()),
- microService.getModelType(), csar.getPolicyModelYaml().orElse(""), false,
- new HashSet<>(Arrays.asList(newLoop)));
-
- newSet.add(microServicePolicy);
- microService.setMappedNameJpa(microServicePolicy.getName());
+ LoopElementModel loopElementModel = new LoopElementModel(microService.getModelType(), "CONFIG_POLICY",
+ blueprintArtifact.getDcaeBlueprint());
+ newSet.add(loopElementModel);
+ loopElementModel.addPolicyModel(createPolicyModel(microService, csar));
}
return newSet;
}
- private JsonObject createGlobalPropertiesJson(BlueprintArtifact blueprintArtifact, Loop newLoop) {
- return DcaeDeployParameters.getDcaeDeploymentParametersInJson(blueprintArtifact, newLoop);
+ private static String createPolicyAcronym(String policyType) {
+ String[] policyNameArray = policyType.split("\\.");
+ return policyNameArray[policyNameArray.length - 1];
+ }
+
+ private PolicyModel createPolicyModel(MicroService microService, CsarHandler csar) throws IOException {
+ return new PolicyModel(microService.getModelType(), csar.getPolicyModelYaml().orElse(""), "1.0",
+ createPolicyAcronym(microService.getModelType()));
}
/**
diff --git a/src/main/java/org/onap/clamp/loop/Loop.java b/src/main/java/org/onap/clamp/loop/Loop.java
index 6b9a924bf..66fd56579 100644
--- a/src/main/java/org/onap/clamp/loop/Loop.java
+++ b/src/main/java/org/onap/clamp/loop/Loop.java
@@ -109,9 +109,6 @@ public class Loop extends AuditEntity implements Serializable {
@JoinColumn(name = "service_uuid")
private Service modelService;
- @Column(columnDefinition = "MEDIUMTEXT", nullable = false, name = "blueprint_yaml")
- private String blueprint;
-
@Expose
@Column(nullable = false, name = "last_computed_state")
@Enumerated(EnumType.STRING)
@@ -156,10 +153,9 @@ public class Loop extends AuditEntity implements Serializable {
/**
* Constructor.
*/
- public Loop(String name, String blueprint, String svgRepresentation) {
+ public Loop(String name, String svgRepresentation) {
this.name = name;
this.svgRepresentation = svgRepresentation;
- this.blueprint = blueprint;
this.lastComputedState = LoopState.DESIGN;
this.globalPropertiesJson = new JsonObject();
initializeExternalComponents();
@@ -197,14 +193,6 @@ public class Loop extends AuditEntity implements Serializable {
this.svgRepresentation = svgRepresentation;
}
- public String getBlueprint() {
- return blueprint;
- }
-
- void setBlueprint(String blueprint) {
- this.blueprint = blueprint;
- }
-
public LoopState getLastComputedState() {
return lastComputedState;
}
@@ -305,7 +293,7 @@ public class Loop extends AuditEntity implements Serializable {
* @param blueprintFileName The blueprint file name
* @return The generated loop name
*/
- static String generateLoopName(String serviceName, String serviceVersion, String resourceName,
+ public static String generateLoopName(String serviceName, String serviceVersion, String resourceName,
String blueprintFilename) {
StringBuilder buffer = new StringBuilder("LOOP_").append(serviceName).append("_v").append(serviceVersion)
.append("_").append(resourceName).append("_").append(blueprintFilename.replaceAll(".yaml", ""));
diff --git a/src/main/java/org/onap/clamp/loop/deploy/DcaeDeployParameters.java b/src/main/java/org/onap/clamp/loop/deploy/DcaeDeployParameters.java
index 1a75f71e6..48349e791 100644
--- a/src/main/java/org/onap/clamp/loop/deploy/DcaeDeployParameters.java
+++ b/src/main/java/org/onap/clamp/loop/deploy/DcaeDeployParameters.java
@@ -28,6 +28,7 @@ import com.google.gson.JsonObject;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.Map;
+import java.util.Set;
import org.onap.clamp.clds.sdc.controller.installer.BlueprintArtifact;
import org.onap.clamp.clds.util.JsonUtils;
@@ -38,21 +39,21 @@ import org.yaml.snakeyaml.Yaml;
/**
* To decode the bluprint input parameters.
*/
-public class DcaeDeployParameters {
+public class DcaeDeployParameters {
- private static LinkedHashMap<String, JsonObject> init(LinkedHashSet<BlueprintArtifact> blueprintArtifactList,
- Loop loop) {
- LinkedHashMap<String, JsonObject> deploymentParamMap = new LinkedHashMap<String, JsonObject>();
+ private static LinkedHashMap<String, JsonObject> init(Set<BlueprintArtifact> blueprintArtifactList, Loop loop) {
+ LinkedHashMap<String, JsonObject> deploymentParamMap = new LinkedHashMap<>();
String microServiceName = ((MicroServicePolicy) loop.getMicroServicePolicies().toArray()[0]).getName();
// Add index to the microservice name from the 2nd blueprint artifact for now.
- // Update the microservice names, when able to link the microserivce <-> blueprint in the future
+ // Update the microservice names, when able to link the microserivce <->
+ // blueprint in the future
int index = 0;
- for (BlueprintArtifact blueprintArtifact: blueprintArtifactList) {
+ for (BlueprintArtifact blueprintArtifact : blueprintArtifactList) {
if (index > 0) {
- deploymentParamMap.put(microServiceName + index,
+ deploymentParamMap.put(microServiceName + index,
generateDcaeDeployParameter(blueprintArtifact, microServiceName));
} else {
- deploymentParamMap.put(microServiceName,
+ deploymentParamMap.put(microServiceName,
generateDcaeDeployParameter(blueprintArtifact, microServiceName));
}
index++;
@@ -65,7 +66,7 @@ public class DcaeDeployParameters {
JsonObject deployJsonBody = new JsonObject();
Yaml yaml = new Yaml();
Map<String, Object> inputsNodes = ((Map<String, Object>) ((Map<String, Object>) yaml
- .load(blueprintArtifact.getDcaeBlueprint())).get("inputs"));
+ .load(blueprintArtifact.getDcaeBlueprint())).get("inputs"));
inputsNodes.entrySet().stream().filter(e -> !e.getKey().contains("policy_id")).forEach(elem -> {
Object defaultValue = ((Map<String, Object>) elem.getValue()).get("default");
if (defaultValue != null) {
@@ -98,13 +99,13 @@ public class DcaeDeployParameters {
*
* @return The deploymentParameters in Json
*/
- public static JsonObject getDcaeDeploymentParametersInJson(LinkedHashSet<BlueprintArtifact> blueprintArtifactList,
+ public static JsonObject getDcaeDeploymentParametersInJson(Set<BlueprintArtifact> blueprintArtifactList,
Loop loop) {
LinkedHashMap<String, JsonObject> deploymentParamMap = init(blueprintArtifactList, loop);
JsonObject globalProperties = new JsonObject();
JsonObject deployParamJson = new JsonObject();
- for (Map.Entry<String, JsonObject> mapElement: deploymentParamMap.entrySet()) {
+ for (Map.Entry<String, JsonObject> mapElement : deploymentParamMap.entrySet()) {
deployParamJson.add(mapElement.getKey(), mapElement.getValue());
}
globalProperties.add("dcaeDeployParameters", deployParamJson);
@@ -117,7 +118,7 @@ public class DcaeDeployParameters {
* @return The deploymentParameters in Json
*/
public static JsonObject getDcaeDeploymentParametersInJson(BlueprintArtifact blueprintArtifact, Loop loop) {
- LinkedHashSet<BlueprintArtifact> blueprintArtifactList = new LinkedHashSet<BlueprintArtifact>();
+ LinkedHashSet<BlueprintArtifact> blueprintArtifactList = new LinkedHashSet<>();
blueprintArtifactList.add(blueprintArtifact);
return getDcaeDeploymentParametersInJson(blueprintArtifactList, loop);
}
diff --git a/src/main/java/org/onap/clamp/loop/service/Service.java b/src/main/java/org/onap/clamp/loop/service/Service.java
index 33b8e02da..89c0b2d42 100644
--- a/src/main/java/org/onap/clamp/loop/service/Service.java
+++ b/src/main/java/org/onap/clamp/loop/service/Service.java
@@ -119,6 +119,20 @@ public class Service implements Serializable {
return (JsonObject) resourceDetails.get(type);
}
+ /**
+ * @return the name
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * @return the version
+ */
+ public String getVersion() {
+ return version;
+ }
+
@Override
public int hashCode() {
final int prime = 31;
diff --git a/src/main/java/org/onap/clamp/loop/template/LoopElementModel.java b/src/main/java/org/onap/clamp/loop/template/LoopElementModel.java
index 7f00c42ea..e3f05a01d 100644
--- a/src/main/java/org/onap/clamp/loop/template/LoopElementModel.java
+++ b/src/main/java/org/onap/clamp/loop/template/LoopElementModel.java
@@ -63,10 +63,14 @@ public class LoopElementModel extends AuditEntity implements Serializable {
@Column(nullable = false, name = "name", unique = true)
private String name;
+ @Expose
+ @Column(name = "dcae_blueprint_id")
+ private String dcaeBlueprintId;
+
/**
* Here we store the blueprint coming from DCAE.
*/
- @Column(nullable = false, name = "blueprint_yaml")
+ @Column(columnDefinition = "MEDIUMTEXT", nullable = false, name = "blueprint_yaml")
private String blueprint;
/**
@@ -149,6 +153,24 @@ public class LoopElementModel extends AuditEntity implements Serializable {
/**
* loopElementType getter.
*
+ * dcaeBlueprintId getter.
+ *
+ * @return the dcaeBlueprintId
+ */
+ public String getDcaeBlueprintId() {
+ return dcaeBlueprintId;
+ }
+
+ /**
+ * dcaeBlueprintId setter.
+ *
+ * @param dcaeBlueprintId the dcaeBlueprintId to set
+ */
+ public void setDcaeBlueprintId(String dcaeBlueprintId) {
+ this.dcaeBlueprintId = dcaeBlueprintId;
+ }
+
+ /**
* @return the loopElementType
*/
public String getLoopElementType() {
diff --git a/src/main/java/org/onap/clamp/loop/template/LoopTemplate.java b/src/main/java/org/onap/clamp/loop/template/LoopTemplate.java
index 7c059e19a..b8adebae9 100644
--- a/src/main/java/org/onap/clamp/loop/template/LoopTemplate.java
+++ b/src/main/java/org/onap/clamp/loop/template/LoopTemplate.java
@@ -26,6 +26,7 @@ package org.onap.clamp.loop.template;
import com.google.gson.annotations.Expose;
import java.io.Serializable;
+import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
@@ -57,6 +58,10 @@ public class LoopTemplate extends AuditEntity implements Serializable {
@Column(nullable = false, name = "name", unique = true)
private String name;
+ @Expose
+ @Column(name = "dcae_blueprint_id")
+ private String dcaeBlueprintId;
+
/**
* This field is used when we have a blueprint defining all microservices. The
* other option would be to have independent blueprint for each microservices.
@@ -111,6 +116,24 @@ public class LoopTemplate extends AuditEntity implements Serializable {
}
/**
+ * dcaeBlueprintId getter.
+ *
+ * @return the dcaeBlueprintId
+ */
+ public String getDcaeBlueprintId() {
+ return dcaeBlueprintId;
+ }
+
+ /**
+ * dcaeBlueprintId setter.
+ *
+ * @param dcaeBlueprintId the dcaeBlueprintId to set
+ */
+ public void setDcaeBlueprintId(String dcaeBlueprintId) {
+ this.dcaeBlueprintId = dcaeBlueprintId;
+ }
+
+ /**
* blueprint setter.
*
* @param blueprint the blueprint to set
@@ -165,6 +188,18 @@ public class LoopTemplate extends AuditEntity implements Serializable {
}
/**
+ * Add list of loopElements to the current template, each loopElementModel is
+ * added at the end of the list so the flowOrder is computed automatically.
+ *
+ * @param loopElementModels The loopElementModel set to add
+ */
+ public void addLoopElementModels(Set<LoopElementModel> loopElementModels) {
+ for (LoopElementModel loopElementModel : loopElementModels) {
+ addLoopElementModel(loopElementModel);
+ }
+ }
+
+ /**
* Add a loopElement to the current template, the loopElementModel is added at
* the end of the list so the flowOrder is computed automatically.
*
@@ -266,4 +301,21 @@ public class LoopTemplate extends AuditEntity implements Serializable {
}
return true;
}
+
+ /**
+ * Generate the loop template name.
+ *
+ * @param serviceName The service name
+ * @param serviceVersion The service version
+ * @param resourceName The resource name
+ * @param blueprintFileName The blueprint file name
+ * @return The generated loop template name
+ */
+ public static String generateLoopTemplateName(String serviceName, String serviceVersion, String resourceName,
+ String blueprintFilename) {
+ StringBuilder buffer = new StringBuilder("LOOP_TEMPLATE_").append(serviceName).append("_v")
+ .append(serviceVersion).append("_").append(resourceName).append("_")
+ .append(blueprintFilename.replaceAll(".yaml", ""));
+ return buffer.toString().replace('.', '_').replaceAll(" ", "");
+ }
}
diff --git a/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java b/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java
index 2ebea7b17..70adf3eef 100644
--- a/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java
+++ b/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java
@@ -51,7 +51,11 @@ import org.onap.clamp.clds.sdc.controller.installer.CsarHandler;
import org.onap.clamp.clds.util.JsonUtils;
import org.onap.clamp.clds.util.ResourceFileUtil;
import org.onap.clamp.loop.service.ServiceRepository;
-import org.onap.clamp.policy.microservice.MicroServicePolicy;
+import org.onap.clamp.loop.template.LoopTemplate;
+import org.onap.clamp.loop.template.LoopTemplateLoopElementModel;
+import org.onap.clamp.loop.template.LoopTemplatesRepository;
+import org.onap.clamp.loop.template.PolicyModelId;
+import org.onap.clamp.loop.template.PolicyModelsRepository;
import org.onap.sdc.api.notification.IArtifactInfo;
import org.onap.sdc.api.notification.INotificationData;
import org.onap.sdc.api.notification.IResourceInstance;
@@ -80,12 +84,15 @@ public class CsarInstallerItCase {
private static final String RESOURCE_INSTANCE_NAME_RESOURCE2 = "ResourceInstanceName2";
@Autowired
- private LoopsRepository loopsRepo;
+ private LoopTemplatesRepository loopTemplatesRepo;
@Autowired
ServiceRepository serviceRepository;
@Autowired
+ PolicyModelsRepository policyModelsRepository;
+
+ @Autowired
@Qualifier("csarInstaller")
private CsarInstaller csarInstaller;
@@ -189,42 +196,44 @@ public class CsarInstallerItCase {
String generatedName = RandomStringUtils.randomAlphanumeric(5);
CsarHandler csar = buildFakeCsarHandler(generatedName);
csarInstaller.installTheCsar(csar);
- assertThat(serviceRepository
- .existsById("63cac700-ab9a-4115-a74f-7eac85e3fce0")).isTrue();
- assertThat(loopsRepo
- .existsById(Loop.generateLoopName(generatedName, "1.0", RESOURCE_INSTANCE_NAME_RESOURCE1, "tca.yaml")))
- .isTrue();
- assertThat(loopsRepo.existsById(
- Loop.generateLoopName(generatedName, "1.0", RESOURCE_INSTANCE_NAME_RESOURCE1, "tca_3.yaml"))).isTrue();
- assertThat(loopsRepo.existsById(
- Loop.generateLoopName(generatedName, "1.0", RESOURCE_INSTANCE_NAME_RESOURCE2, "tca_2.yaml"))).isTrue();
+ assertThat(serviceRepository.existsById("63cac700-ab9a-4115-a74f-7eac85e3fce0")).isTrue();
+ assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
+ RESOURCE_INSTANCE_NAME_RESOURCE1, "tca.yaml"))).isTrue();
+ assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
+ RESOURCE_INSTANCE_NAME_RESOURCE1, "tca_3.yaml"))).isTrue();
+ assertThat(loopTemplatesRepo.existsById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
+ RESOURCE_INSTANCE_NAME_RESOURCE2, "tca_2.yaml"))).isTrue();
// Verify now that policy and json representation, global properties are well
// set
- Loop loop = loopsRepo
- .findById(Loop.generateLoopName(generatedName, "1.0", RESOURCE_INSTANCE_NAME_RESOURCE1, "tca.yaml"))
- .get();
- assertThat(loop.getSvgRepresentation()).startsWith("<svg ");
- assertThat(loop.getGlobalPropertiesJson().get("dcaeDeployParameters")).isNotNull();
- assertThat(loop.getMicroServicePolicies()).hasSize(1);
- assertThat(loop.getOperationalPolicies()).hasSize(1);
- assertThat(loop.getModelService().getServiceUuid()).isEqualTo("63cac700-ab9a-4115-a74f-7eac85e3fce0");
+ LoopTemplate loopTemplate = loopTemplatesRepo.findById(LoopTemplate.generateLoopTemplateName(generatedName,
+ "1.0", RESOURCE_INSTANCE_NAME_RESOURCE1, "tca.yaml")).get();
+ assertThat(loopTemplate.getSvgRepresentation()).startsWith("<svg ");
+ assertThat(loopTemplate.getLoopElementModelsUsed()).hasSize(1);
+ assertThat(loopTemplate.getModelService().getServiceUuid()).isEqualTo("63cac700-ab9a-4115-a74f-7eac85e3fce0");
JSONAssert.assertEquals(ResourceFileUtil.getResourceAsString("tosca/model-properties.json"),
- JsonUtils.GSON_JPA_MODEL.toJson(loop.getModelService()), true);
+ JsonUtils.GSON_JPA_MODEL.toJson(loopTemplate.getModelService()), true);
JSONAssert.assertEquals(ResourceFileUtil.getResourceAsString("tosca/service-details.json"),
- JsonUtils.GSON_JPA_MODEL.toJson(loop.getModelService().getServiceDetails()), true);
+ JsonUtils.GSON_JPA_MODEL.toJson(loopTemplate.getModelService().getServiceDetails()), true);
JSONAssert.assertEquals(ResourceFileUtil.getResourceAsString("tosca/resource-details.json"),
- JsonUtils.GSON_JPA_MODEL.toJson(loop.getModelService().getResourceDetails()), true);
- assertThat(((MicroServicePolicy) (loop.getMicroServicePolicies().toArray()[0])).getModelType()).isNotEmpty();
-
- loop = loopsRepo
- .findById(Loop.generateLoopName(generatedName, "1.0", RESOURCE_INSTANCE_NAME_RESOURCE1, "tca_3.yaml"))
- .get();
- assertThat(((MicroServicePolicy) (loop.getMicroServicePolicies().toArray()[0])).getModelType()).isNotEmpty();
-
- loop = loopsRepo
- .findById(Loop.generateLoopName(generatedName, "1.0", RESOURCE_INSTANCE_NAME_RESOURCE2, "tca_2.yaml"))
- .get();
- assertThat(((MicroServicePolicy) (loop.getMicroServicePolicies().toArray()[0])).getModelType()).isNotEmpty();
+ JsonUtils.GSON_JPA_MODEL.toJson(loopTemplate.getModelService().getResourceDetails()), true);
+ assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
+ .getLoopElementModel().getName()).isNotEmpty();
+
+ loopTemplate = loopTemplatesRepo.findById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
+ RESOURCE_INSTANCE_NAME_RESOURCE1, "tca_3.yaml")).get();
+ assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
+ .getLoopElementModel().getName()).isNotEmpty();
+ assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
+ .getLoopElementModel().getName()).isNotEmpty();
+ assertThat(loopTemplate.getMaximumInstancesAllowed()).isEqualByComparingTo(Integer.valueOf(0));
+ loopTemplate = loopTemplatesRepo.findById(LoopTemplate.generateLoopTemplateName(generatedName, "1.0",
+ RESOURCE_INSTANCE_NAME_RESOURCE2, "tca_2.yaml")).get();
+ assertThat(((LoopTemplateLoopElementModel) (loopTemplate.getLoopElementModelsUsed().toArray()[0]))
+ .getLoopElementModel().getName()).isNotEmpty();
+
+ assertThat(policyModelsRepository.findAll().size()).isEqualByComparingTo(1);
+ assertThat(policyModelsRepository
+ .existsById(new PolicyModelId("onap.policies.monitoring.cdap.tca.hi.lo.app", "1.0"))).isTrue();
}
@Test(expected = SdcArtifactInstallerException.class)
diff --git a/src/test/java/org/onap/clamp/loop/DcaeComponentTest.java b/src/test/java/org/onap/clamp/loop/DcaeComponentTest.java
index 9352e9131..c7035efa0 100644
--- a/src/test/java/org/onap/clamp/loop/DcaeComponentTest.java
+++ b/src/test/java/org/onap/clamp/loop/DcaeComponentTest.java
@@ -50,7 +50,7 @@ public class DcaeComponentTest {
String yaml = "imports:\n" + " - \"http://www.getcloudify.org/spec/cloudify/3.4/types.yaml\"\n"
+ "node_templates:\n" + " docker_service_host:\n" + " type: dcae.nodes.SelectedDockerHost";
- Loop loopTest = new Loop("ControlLoopTest", yaml, "<xml></xml>");
+ Loop loopTest = new Loop("ControlLoopTest", "<xml></xml>");
loopTest.setGlobalPropertiesJson(
new Gson().fromJson("{\"dcaeDeployParameters\":" + "{\"policy_id\": \"name\"}}", JsonObject.class));
loopTest.setLastComputedState(LoopState.DESIGN);
diff --git a/src/test/java/org/onap/clamp/loop/DeployFlowTestItCase.java b/src/test/java/org/onap/clamp/loop/DeployFlowTestItCase.java
index d7c2edadc..e23dcf186 100644
--- a/src/test/java/org/onap/clamp/loop/DeployFlowTestItCase.java
+++ b/src/test/java/org/onap/clamp/loop/DeployFlowTestItCase.java
@@ -47,7 +47,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
-
@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class)
public class DeployFlowTestItCase {
@@ -63,7 +62,7 @@ public class DeployFlowTestItCase {
@Transactional
public void deployWithSingleBlueprintTest() throws JsonSyntaxException, IOException {
Loop loopTest = createLoop("ControlLoopTest", "<xml></xml>", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "UUID-blueprint");
+ "UUID-blueprint");
LoopTemplate template = new LoopTemplate();
template.setName("templateName");
template.setBlueprint("yamlcontent");
@@ -73,11 +72,10 @@ public class DeployFlowTestItCase {
"{\"param1\":\"value1\"}", true);
loopTest.addMicroServicePolicy(microServicePolicy);
loopService.saveOrUpdateLoop(loopTest);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext)
- .withProperty("loopObject", loopTest).build();
+ Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest)
+ .build();
- camelContext.createProducerTemplate()
- .send("direct:deploy-loop", myCamelExchange);
+ camelContext.createProducerTemplate().send("direct:deploy-loop", myCamelExchange);
Loop loopAfterTest = loopService.getLoop("ControlLoopTest");
assertThat(loopAfterTest.getDcaeDeploymentStatusUrl()).isNotNull();
@@ -88,26 +86,23 @@ public class DeployFlowTestItCase {
@Transactional
public void deployWithMultipleBlueprintTest() throws JsonSyntaxException, IOException {
Loop loopTest2 = createLoop("ControlLoopTest2", "<xml></xml>", "yamlcontent", "{\"dcaeDeployParameters\": {"
- + "\"microService1\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName1_tca\"},"
- + "\"microService2\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName2_tca\"}"
- + "}}", "UUID-blueprint");
+ + "\"microService1\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName1_tca\"},"
+ + "\"microService2\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName2_tca\"}"
+ + "}}", "UUID-blueprint");
LoopTemplate template = new LoopTemplate();
template.setName("templateName");
loopTest2.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy1 = getMicroServicePolicy("microService1", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
- MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("microService2", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true);
+ MicroServicePolicy microServicePolicy1 = getMicroServicePolicy("microService1", "", "{\"configtype\":\"json\"}",
+ "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true);
+ MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("microService2", "", "{\"configtype\":\"json\"}",
+ "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true);
loopTest2.addMicroServicePolicy(microServicePolicy1);
loopTest2.addMicroServicePolicy(microServicePolicy2);
loopService.saveOrUpdateLoop(loopTest2);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext)
- .withProperty("loopObject", loopTest2).build();
+ Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest2)
+ .build();
- camelContext.createProducerTemplate()
- .send("direct:deploy-loop", myCamelExchange);
+ camelContext.createProducerTemplate().send("direct:deploy-loop", myCamelExchange);
Loop loopAfterTest = loopService.getLoop("ControlLoopTest2");
Set<MicroServicePolicy> policyList = loopAfterTest.getMicroServicePolicies();
@@ -123,7 +118,7 @@ public class DeployFlowTestItCase {
@Transactional
public void undeployWithSingleBlueprintTest() throws JsonSyntaxException, IOException {
Loop loopTest = createLoop("ControlLoopTest", "<xml></xml>", "yamlcontent", "{\"testname\":\"testvalue\"}",
- "UUID-blueprint");
+ "UUID-blueprint");
LoopTemplate template = new LoopTemplate();
template.setName("templateName");
template.setBlueprint("yamlcontent");
@@ -135,11 +130,10 @@ public class DeployFlowTestItCase {
"{\"param1\":\"value1\"}", true);
loopTest.addMicroServicePolicy(microServicePolicy);
loopService.saveOrUpdateLoop(loopTest);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext)
- .withProperty("loopObject", loopTest).build();
+ Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest)
+ .build();
- camelContext.createProducerTemplate()
- .send("direct:undeploy-loop", myCamelExchange);
+ camelContext.createProducerTemplate().send("direct:undeploy-loop", myCamelExchange);
Loop loopAfterTest = loopService.getLoop("ControlLoopTest");
assertThat(loopAfterTest.getDcaeDeploymentStatusUrl().contains("/uninstall")).isTrue();
@@ -149,26 +143,25 @@ public class DeployFlowTestItCase {
@Transactional
public void undeployWithMultipleBlueprintTest() throws JsonSyntaxException, IOException {
Loop loopTest2 = createLoop("ControlLoopTest2", "<xml></xml>", "yamlcontent", "{\"dcaeDeployParameters\": {"
- + "\"microService1\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName1_tca\"},"
- + "\"microService2\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName2_tca\"}"
- + "}}", "UUID-blueprint");
+ + "\"microService1\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName1_tca\"},"
+ + "\"microService2\": {\"location_id\": \"\", \"policy_id\": \"TCA_h2NMX_v1_0_ResourceInstanceName2_tca\"}"
+ + "}}", "UUID-blueprint");
LoopTemplate template = new LoopTemplate();
template.setName("templateName");
loopTest2.setLoopTemplate(template);
- MicroServicePolicy microServicePolicy1 = getMicroServicePolicy("microService1", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true, "testDeploymentId1", "testDeploymentStatusUrl1");
- MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("microService2", "",
- "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0",
- "{\"param1\":\"value1\"}", true, "testDeploymentId2", "testDeploymentStatusUrl2");
+ MicroServicePolicy microServicePolicy1 = getMicroServicePolicy("microService1", "", "{\"configtype\":\"json\"}",
+ "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true,
+ "testDeploymentId1", "testDeploymentStatusUrl1");
+ MicroServicePolicy microServicePolicy2 = getMicroServicePolicy("microService2", "", "{\"configtype\":\"json\"}",
+ "tosca_definitions_version: tosca_simple_yaml_1_0_0", "{\"param1\":\"value1\"}", true,
+ "testDeploymentId2", "testDeploymentStatusUrl2");
loopTest2.addMicroServicePolicy(microServicePolicy1);
loopTest2.addMicroServicePolicy(microServicePolicy2);
loopService.saveOrUpdateLoop(loopTest2);
- Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext)
- .withProperty("loopObject", loopTest2).build();
+ Exchange myCamelExchange = ExchangeBuilder.anExchange(camelContext).withProperty("loopObject", loopTest2)
+ .build();
- camelContext.createProducerTemplate()
- .send("direct:undeploy-loop", myCamelExchange);
+ camelContext.createProducerTemplate().send("direct:undeploy-loop", myCamelExchange);
Loop loopAfterTest = loopService.getLoop("ControlLoopTest2");
Set<MicroServicePolicy> policyList = loopAfterTest.getMicroServicePolicies();
@@ -181,7 +174,7 @@ public class DeployFlowTestItCase {
private Loop createLoop(String name, String svgRepresentation, String blueprint, String globalPropertiesJson,
String dcaeBlueprintId) throws JsonSyntaxException, IOException {
- Loop loop = new Loop(name, blueprint, svgRepresentation);
+ Loop loop = new Loop(name, svgRepresentation);
loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class));
loop.setLastComputedState(LoopState.DESIGN);
loop.setDcaeBlueprintId(dcaeBlueprintId);
@@ -197,9 +190,10 @@ public class DeployFlowTestItCase {
}
private MicroServicePolicy getMicroServicePolicy(String name, String modelType, String jsonRepresentation,
- String policyTosca, String jsonProperties, boolean shared, String deploymengId, String deploymentStatusUrl) {
- MicroServicePolicy microService = getMicroServicePolicy(name, modelType, jsonRepresentation,
- policyTosca, jsonProperties, shared);
+ String policyTosca, String jsonProperties, boolean shared, String deploymengId,
+ String deploymentStatusUrl) {
+ MicroServicePolicy microService = getMicroServicePolicy(name, modelType, jsonRepresentation, policyTosca,
+ jsonProperties, shared);
microService.setDcaeDeploymentId(deploymengId);
microService.setDcaeDeploymentStatusUrl(deploymentStatusUrl);
diff --git a/src/test/java/org/onap/clamp/loop/LoopControllerTestItCase.java b/src/test/java/org/onap/clamp/loop/LoopControllerTestItCase.java
index a41b5c251..ad37bcc88 100644
--- a/src/test/java/org/onap/clamp/loop/LoopControllerTestItCase.java
+++ b/src/test/java/org/onap/clamp/loop/LoopControllerTestItCase.java
@@ -72,7 +72,7 @@ public class LoopControllerTestItCase {
}
private Loop createTestLoop(String loopName, String loopBlueprint, String loopSvg) {
- return new Loop(loopName, loopBlueprint, loopSvg);
+ return new Loop(loopName, loopSvg);
}
@Test
diff --git a/src/test/java/org/onap/clamp/loop/LoopLogServiceTestItCase.java b/src/test/java/org/onap/clamp/loop/LoopLogServiceTestItCase.java
index c172a9a07..15b9cb43a 100644
--- a/src/test/java/org/onap/clamp/loop/LoopLogServiceTestItCase.java
+++ b/src/test/java/org/onap/clamp/loop/LoopLogServiceTestItCase.java
@@ -62,7 +62,7 @@ public class LoopLogServiceTestItCase {
LoopLogService loopLogService;
private void saveTestLoopToDb() {
- Loop testLoop = new Loop(EXAMPLE_LOOP_NAME, BLUEPRINT, SVG_REPRESENTATION);
+ Loop testLoop = new Loop(EXAMPLE_LOOP_NAME, SVG_REPRESENTATION);
testLoop.setGlobalPropertiesJson(JsonUtils.GSON.fromJson(EXAMPLE_JSON, JsonObject.class));
loopService.saveOrUpdateLoop(testLoop);
}
@@ -88,7 +88,7 @@ public class LoopLogServiceTestItCase {
log.setLogComponent(CLAMP_COMPONENT);
log.setLogType(LogType.INFO);
log.setMessage(SAMPLE_LOG_MESSAGE);
- Loop testLoop = new Loop(EXAMPLE_LOOP_NAME, BLUEPRINT, SVG_REPRESENTATION);
+ Loop testLoop = new Loop(EXAMPLE_LOOP_NAME, SVG_REPRESENTATION);
log.setLoop(testLoop);
assertThat(log.getMessage()).isEqualTo(SAMPLE_LOG_MESSAGE);
assertThat(log.getLogType()).isEqualTo(LogType.INFO);
diff --git a/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java b/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java
index e0c112cb5..891d23b46 100644
--- a/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java
+++ b/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java
@@ -121,7 +121,6 @@ public class LoopRepositoriesItCase {
Loop loop = new Loop();
loop.setName(name);
loop.setSvgRepresentation(svgRepresentation);
- loop.setBlueprint(blueprint);
loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class));
loop.setLastComputedState(LoopState.DESIGN);
loop.setDcaeDeploymentId(dcaeId);
@@ -215,11 +214,10 @@ public class LoopRepositoriesItCase {
// Attempt an update
((LoopLog) loopInDbRetrieved.getLoopLogs().toArray()[0]).setLogInstant(Instant.now());
- loopInDbRetrieved.setBlueprint("yaml2");
+ loopInDbRetrieved.setSvgRepresentation("");
Loop loopInDbRetrievedUpdated = loopRepository.saveAndFlush(loopInDbRetrieved);
// Loop loopInDbRetrievedUpdated =
// loopRepository.findById(loopTest.getName()).get();
- assertThat(loopInDbRetrievedUpdated.getBlueprint()).isEqualTo("yaml2");
assertThat((LoopLog) loopInDbRetrievedUpdated.getLoopLogs().toArray()[0])
.isEqualToComparingFieldByField(loopInDbRetrieved.getLoopLogs().toArray()[0]);
// UpdatedDate should have been changed
diff --git a/src/test/java/org/onap/clamp/loop/LoopServiceTestItCase.java b/src/test/java/org/onap/clamp/loop/LoopServiceTestItCase.java
index 338aaa3eb..615826eda 100644
--- a/src/test/java/org/onap/clamp/loop/LoopServiceTestItCase.java
+++ b/src/test/java/org/onap/clamp/loop/LoopServiceTestItCase.java
@@ -87,7 +87,6 @@ public class LoopServiceTestItCase {
assertThat(actualLoop).isNotNull();
assertThat(actualLoop).isEqualTo(loopsRepository.findById(actualLoop.getName()).get());
assertThat(actualLoop.getName()).isEqualTo(EXAMPLE_LOOP_NAME);
- assertThat(actualLoop.getBlueprint()).isEqualTo(loopBlueprint);
assertThat(actualLoop.getSvgRepresentation()).isEqualTo(loopSvg);
assertThat(actualLoop.getGlobalPropertiesJson().getAsJsonPrimitive("testName").getAsString())
.isEqualTo("testValue");
@@ -354,6 +353,6 @@ public class LoopServiceTestItCase {
}
private Loop createTestLoop(String loopName, String loopBlueprint, String loopSvg) {
- return new Loop(loopName, loopBlueprint, loopSvg);
+ return new Loop(loopName, loopSvg);
}
} \ No newline at end of file
diff --git a/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java b/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java
index af8f2271b..052b97124 100644
--- a/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java
+++ b/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java
@@ -61,7 +61,7 @@ public class LoopToJsonTest {
private Loop getLoop(String name, String svgRepresentation, String blueprint, String globalPropertiesJson,
String dcaeId, String dcaeUrl, String dcaeBlueprintId) throws JsonSyntaxException, IOException {
- Loop loop = new Loop(name, blueprint, svgRepresentation);
+ Loop loop = new Loop(name, svgRepresentation);
loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class));
loop.setLastComputedState(LoopState.DESIGN);
loop.setDcaeDeploymentId(dcaeId);
@@ -134,7 +134,6 @@ public class LoopToJsonTest {
assertThat(loopTestDeserialized.getComponent("POLICY").getState()).isEqualToComparingOnlyGivenFields(
loopTest.getComponent("POLICY").getState(), "stateName", "description");
// svg and blueprint not exposed so wont be deserialized
- assertThat(loopTestDeserialized.getBlueprint()).isEqualTo(null);
assertThat(loopTestDeserialized.getSvgRepresentation()).isEqualTo(null);
assertThat(loopTestDeserialized.getOperationalPolicies()).containsExactly(opPolicy);
diff --git a/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java b/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java
index 39468a1c7..f8c1d8662 100644
--- a/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java
+++ b/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java
@@ -111,8 +111,7 @@ public class PolicyModelServiceItCase {
policyModelsService.saveOrUpdatePolicyModel(policyModel2);
List<String> policyModelTypesList = policyModelsService.getAllPolicyModelTypes();
- assertThat(policyModelTypesList).containsOnly(policyModel1.getPolicyModelType(),
- policyModel2.getPolicyModelType());
+ assertThat(policyModelTypesList).contains(policyModel1.getPolicyModelType(), policyModel2.getPolicyModelType());
}
@Test
@@ -125,7 +124,7 @@ public class PolicyModelServiceItCase {
"VARIANT", "user");
policyModelsService.saveOrUpdatePolicyModel(policyModel2);
- assertThat(policyModelsService.getAllPolicyModels()).containsOnly(policyModel1, policyModel2);
+ assertThat(policyModelsService.getAllPolicyModels()).contains(policyModel1, policyModel2);
}
@Test
@@ -138,7 +137,7 @@ public class PolicyModelServiceItCase {
"VARIANT", "user");
policyModelsService.saveOrUpdatePolicyModel(policyModel2);
- assertThat(policyModelsService.getAllPolicyModelsByType(POLICY_MODEL_TYPE_2)).containsOnly(policyModel1,
+ assertThat(policyModelsService.getAllPolicyModelsByType(POLICY_MODEL_TYPE_2)).contains(policyModel1,
policyModel2);
}
@@ -154,6 +153,6 @@ public class PolicyModelServiceItCase {
SortedSet<PolicyModel> sortedSet = new TreeSet<>();
policyModelsService.getAllPolicyModels().forEach(sortedSet::add);
- assertThat(sortedSet).containsExactly(policyModel2, policyModel1);
+ assertThat(sortedSet).contains(policyModel2, policyModel1);
}
}