diff options
author | FrancescoFioraEst <francesco.fiora@est.tech> | 2022-04-27 10:32:51 +0100 |
---|---|---|
committer | Francesco Fiora <francesco.fiora@est.tech> | 2022-04-27 09:52:07 +0000 |
commit | c3fb95f45239453d8765d6e51118f49dc5f90444 (patch) | |
tree | 95c0f4c91b0a25eaf50e324f960b58d4d9853d09 /runtime-acm | |
parent | d13940636ced77fcafdf236d5af0eef9ee4509a1 (diff) |
Fix Issue when serialization into JSON Schema
Issue-ID: POLICY-4104
Change-Id: Iab42134820fc547429a988b43a0bd6edb344c3db
Signed-off-by: FrancescoFioraEst <francesco.fiora@est.tech>
Diffstat (limited to 'runtime-acm')
4 files changed, 101 insertions, 113 deletions
diff --git a/runtime-acm/pom.xml b/runtime-acm/pom.xml index 7648175a3..c6729ffa5 100644 --- a/runtime-acm/pom.xml +++ b/runtime-acm/pom.xml @@ -50,6 +50,16 @@ <version>${project.version}</version> </dependency> <dependency> + <groupId>com.fasterxml.jackson.module</groupId> + <artifactId>jackson-module-jsonSchema</artifactId> + <exclusions> + <exclusion> + <groupId>javax.validation</groupId> + <artifactId>validation-api</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> diff --git a/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProvider.java b/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProvider.java index e0027d36b..726fcba5c 100644 --- a/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProvider.java +++ b/runtime-acm/src/main/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProvider.java @@ -21,10 +21,11 @@ package org.onap.policy.clamp.acm.runtime.commissioning; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.JsonPrimitive; -import com.google.gson.JsonSerializer; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.JavaType; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.module.jsonSchema.factories.SchemaFactoryWrapper; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -69,11 +70,11 @@ public class CommissioningProvider { private final ServiceTemplateProvider serviceTemplateProvider; private final AutomationCompositionProvider acProvider; + private final ObjectMapper mapper = new ObjectMapper(); private final ParticipantProvider participantProvider; private final SupervisionHandler supervisionHandler; - private static final Map<String, String> sections = new HashMap<>(); - private Gson gson = new Gson(); + private static final Map<String, JavaType> sections = new HashMap<>(); /** * Create a commissioning provider. @@ -84,12 +85,13 @@ public class CommissioningProvider { * @param participantProvider the Participant Provider */ public CommissioningProvider(ServiceTemplateProvider serviceTemplateProvider, - AutomationCompositionProvider acProvider, SupervisionHandler supervisionHandler, - ParticipantProvider participantProvider) { + AutomationCompositionProvider acProvider, SupervisionHandler supervisionHandler, + ParticipantProvider participantProvider) { this.serviceTemplateProvider = serviceTemplateProvider; this.acProvider = acProvider; this.supervisionHandler = supervisionHandler; this.participantProvider = participantProvider; + mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); } /** @@ -98,34 +100,15 @@ public class CommissioningProvider { */ @EventListener(ApplicationReadyEvent.class) public void initialize() { - GsonBuilder builder = new GsonBuilder(); - builder.registerTypeAdapter(ToscaServiceTemplate.class, - (JsonSerializer<ToscaServiceTemplate>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaDataType.class, - (JsonSerializer<ToscaDataType>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaCapabilityType.class, - (JsonSerializer<ToscaCapabilityType>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaNodeType.class, - (JsonSerializer<ToscaNodeType>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaRelationshipType.class, - (JsonSerializer<ToscaRelationshipType>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaPolicyType.class, - (JsonSerializer<ToscaPolicyType>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaTopologyTemplate.class, - (JsonSerializer<ToscaTopologyTemplate>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.registerTypeAdapter(ToscaNodeTemplate.class, - (JsonSerializer<ToscaNodeTemplate>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.setPrettyPrinting(); - gson = builder.create(); - - sections.put("data_types", gson.toJson(new ToscaDataType())); - sections.put("capability_types", gson.toJson(new ToscaCapabilityType())); - sections.put("node_types", gson.toJson(new ToscaNodeType())); - sections.put("relationship_types", gson.toJson(new ToscaRelationshipType())); - sections.put("policy_types", gson.toJson(new ToscaPolicyType())); - sections.put("topology_template", gson.toJson(new ToscaTopologyTemplate())); - sections.put("node_templates", gson.toJson(new ToscaNodeTemplate())); - sections.put("all", gson.toJson(new ToscaServiceTemplate())); + sections.put("data_types", mapper.constructType(ToscaDataType.class)); + sections.put("capability_types", mapper.constructType(ToscaCapabilityType.class)); + sections.put("node_types", mapper.constructType(ToscaNodeType.class)); + sections.put("relationship_types", mapper.constructType(ToscaRelationshipType.class)); + sections.put("policy_types", mapper.constructType(ToscaPolicyType.class)); + sections.put("topology_template", mapper.constructType(ToscaTopologyTemplate.class)); + sections.put("node_templates", + mapper.getTypeFactory().constructCollectionType(List.class, ToscaNodeTemplate.class)); + sections.put("all", mapper.constructType(ToscaServiceTemplate.class)); } /** @@ -136,11 +119,11 @@ public class CommissioningProvider { * @throws PfModelException on creation errors */ public CommissioningResponse createAutomationCompositionDefinitions(ToscaServiceTemplate serviceTemplate) - throws PfModelException { + throws PfModelException { if (verifyIfInstancePropertiesExists()) { throw new PfModelException(Status.BAD_REQUEST, - "Delete instances, to commission automation composition definitions"); + "Delete instances, to commission automation composition definitions"); } serviceTemplate = serviceTemplateProvider.createServiceTemplate(serviceTemplate); List<Participant> participantList = participantProvider.getParticipants(); @@ -169,11 +152,11 @@ public class CommissioningProvider { * @throws PfModelException on deletion errors */ public CommissioningResponse deleteAutomationCompositionDefinition(String name, String version) - throws PfModelException { + throws PfModelException { if (verifyIfInstancePropertiesExists()) { throw new PfModelException(Status.BAD_REQUEST, - "Delete instances, to commission automation composition definitions"); + "Delete instances, to commission automation composition definitions"); } List<Participant> participantList = participantProvider.getParticipants(); if (!participantList.isEmpty()) { @@ -196,7 +179,7 @@ public class CommissioningProvider { */ @Transactional(readOnly = true) public List<ToscaNodeTemplate> getAutomationCompositionDefinitions(String acName, String acVersion) - throws PfModelException { + throws PfModelException { // @formatter:off ToscaTypedEntityFilter<ToscaNodeTemplate> nodeTemplateFilter = ToscaTypedEntityFilter @@ -219,7 +202,7 @@ public class CommissioningProvider { */ @Transactional(readOnly = true) public List<ToscaNodeTemplate> getAutomationCompositionElementDefinitions( - ToscaNodeTemplate automationCompositionNodeTemplate) throws PfModelException { + ToscaNodeTemplate automationCompositionNodeTemplate) throws PfModelException { if (!AUTOMATION_COMPOSITION_NODE_TYPE.equals(automationCompositionNodeTemplate.getType())) { return Collections.emptyList(); } @@ -230,7 +213,7 @@ public class CommissioningProvider { @SuppressWarnings("unchecked") List<Map<String, String>> automationCompositionElements = - (List<Map<String, String>>) automationCompositionNodeTemplate.getProperties().get("elements"); + (List<Map<String, String>>) automationCompositionNodeTemplate.getProperties().get("elements"); if (CollectionUtils.isEmpty(automationCompositionElements)) { return Collections.emptyList(); @@ -262,23 +245,23 @@ public class CommissioningProvider { */ @Transactional(readOnly = true) public Map<String, ToscaNodeTemplate> getNodeTemplatesWithCommonOrInstanceProperties(boolean common, String name, - String version) throws PfModelException { + String version) throws PfModelException { if (common && verifyIfInstancePropertiesExists()) { throw new PfModelException(Status.BAD_REQUEST, - "Cannot create or edit common properties, delete all the instantiations first"); + "Cannot create or edit common properties, delete all the instantiations first"); } var serviceTemplateList = serviceTemplateProvider.getServiceTemplateList(name, version); var commonOrInstanceNodeTypeProps = - serviceTemplateProvider.getCommonOrInstancePropertiesFromNodeTypes(common, serviceTemplateList.get(0)); + serviceTemplateProvider.getCommonOrInstancePropertiesFromNodeTypes(common, serviceTemplateList.get(0)); var serviceTemplates = new ToscaServiceTemplates(); serviceTemplates.setServiceTemplates(filterToscaNodeTemplateInstance(serviceTemplateList)); return serviceTemplateProvider.getDerivedCommonOrInstanceNodeTemplates( - serviceTemplates.getServiceTemplates().get(0).getToscaTopologyTemplate().getNodeTemplates(), - commonOrInstanceNodeTypeProps); + serviceTemplates.getServiceTemplates().get(0).getToscaTopologyTemplate().getNodeTemplates(), + commonOrInstanceNodeTypeProps); } /** @@ -332,7 +315,12 @@ public class CommissioningProvider { template.put("node_types", fullTemplate.getNodeTypes()); template.put("topology_template", fullTemplate.getToscaTopologyTemplate()); - return gson.toJson(template); + try { + return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(template); + + } catch (JsonProcessingException e) { + throw new PfModelException(Status.BAD_REQUEST, "Converion to Json Schema failed", e); + } } /** @@ -343,7 +331,15 @@ public class CommissioningProvider { * @throws PfModelException on errors with retrieving the classes */ public String getToscaServiceTemplateSchema(String section) throws PfModelException { - return sections.getOrDefault(section, sections.get("all")); + var visitor = new SchemaFactoryWrapper(); + var sectionMapper = sections.getOrDefault(section, sections.get("all")); + try { + mapper.acceptJsonFormatVisitor(sectionMapper, visitor); + var jsonSchema = visitor.finalSchema(); + return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonSchema); + } catch (JsonProcessingException e) { + throw new PfModelException(Status.BAD_REQUEST, "Converion to Json Schema failed", e); + } } private List<ToscaServiceTemplate> filterToscaNodeTemplateInstance(List<ToscaServiceTemplate> serviceTemplates) { @@ -376,7 +372,7 @@ public class CommissioningProvider { */ private boolean verifyIfInstancePropertiesExists() { return acProvider.getAllNodeTemplates().stream() - .anyMatch(nodeTemplate -> nodeTemplate.getKey().getName().contains(HYPHEN)); + .anyMatch(nodeTemplate -> nodeTemplate.getKey().getName().contains(HYPHEN)); } } diff --git a/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProviderTest.java b/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProviderTest.java index bcdb4ddd6..71aadccb9 100644 --- a/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProviderTest.java +++ b/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/CommissioningProviderTest.java @@ -29,10 +29,9 @@ import static org.mockito.Mockito.when; import static org.onap.policy.clamp.acm.runtime.util.CommonTestData.TOSCA_SERVICE_TEMPLATE_YAML; import static org.onap.policy.clamp.acm.runtime.util.CommonTestData.TOSCA_ST_TEMPLATE_YAML; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.JsonPrimitive; -import com.google.gson.JsonSerializer; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.module.jsonSchema.factories.SchemaFactoryWrapper; import java.util.List; import java.util.Map; import java.util.Objects; @@ -56,6 +55,7 @@ import org.onap.policy.models.tosca.authorative.concepts.ToscaTopologyTemplate; class CommissioningProviderTest { private static final Coder CODER = new StandardCoder(); + private final ObjectMapper mapper = new ObjectMapper(); /** * Test the fetching of automation composition definitions (ToscaServiceTemplates). @@ -69,13 +69,13 @@ class CommissioningProviderTest { var serviceTemplateProvider = mock(ServiceTemplateProvider.class); CommissioningProvider provider = - new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); + new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); List<ToscaNodeTemplate> listOfTemplates = provider.getAutomationCompositionDefinitions(null, null); assertThat(listOfTemplates).isEmpty(); when(acProvider.getFilteredNodeTemplates(any())) - .thenReturn(List.of(new ToscaNodeTemplate(), new ToscaNodeTemplate())); + .thenReturn(List.of(new ToscaNodeTemplate(), new ToscaNodeTemplate())); listOfTemplates = provider.getAutomationCompositionDefinitions(null, null); assertThat(listOfTemplates).hasSize(2); } @@ -92,7 +92,7 @@ class CommissioningProviderTest { var participantProvider = mock(ParticipantProvider.class); CommissioningProvider provider = - new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); + new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); List<ToscaNodeTemplate> listOfTemplates = provider.getAutomationCompositionDefinitions(null, null); assertThat(listOfTemplates).isEmpty(); @@ -102,11 +102,11 @@ class CommissioningProviderTest { // Response should return the number of node templates present in the service template List<ToscaConceptIdentifier> affectedDefinitions = provider - .createAutomationCompositionDefinitions(serviceTemplate).getAffectedAutomationCompositionDefinitions(); + .createAutomationCompositionDefinitions(serviceTemplate).getAffectedAutomationCompositionDefinitions(); assertThat(affectedDefinitions).hasSize(13); when(acProvider.getFilteredNodeTemplates(any())) - .thenReturn(List.of(new ToscaNodeTemplate(), new ToscaNodeTemplate())); + .thenReturn(List.of(new ToscaNodeTemplate(), new ToscaNodeTemplate())); listOfTemplates = provider.getAutomationCompositionDefinitions(null, null); assertThat(listOfTemplates).hasSize(2); @@ -124,9 +124,8 @@ class CommissioningProviderTest { var participantProvider = mock(ParticipantProvider.class); CommissioningProvider provider = - new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); - ToscaServiceTemplate serviceTemplate = - InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); + new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); + ToscaServiceTemplate serviceTemplate = InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); when(serviceTemplateProvider.createServiceTemplate(serviceTemplate)).thenReturn(serviceTemplate); provider.createAutomationCompositionDefinitions(serviceTemplate); @@ -138,7 +137,7 @@ class CommissioningProviderTest { assertThat(returnedServiceTemplate).isNotNull(); Map<String, ToscaNodeTemplate> nodeTemplates = - returnedServiceTemplate.getToscaTopologyTemplate().getNodeTemplates(); + returnedServiceTemplate.getToscaTopologyTemplate().getNodeTemplates(); assertThat(nodeTemplates).hasSize(8); } @@ -155,15 +154,14 @@ class CommissioningProviderTest { var participantProvider = mock(ParticipantProvider.class); CommissioningProvider provider = - new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); - ToscaServiceTemplate serviceTemplate = - InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); + new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); + ToscaServiceTemplate serviceTemplate = InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); when(serviceTemplateProvider.createServiceTemplate(serviceTemplate)).thenReturn(serviceTemplate); provider.createAutomationCompositionDefinitions(serviceTemplate); - when(serviceTemplateProvider.getServiceTemplateList(any(), any())).thenReturn(List.of( - Objects.requireNonNull(serviceTemplate))); + when(serviceTemplateProvider.getServiceTemplateList(any(), any())) + .thenReturn(List.of(Objects.requireNonNull(serviceTemplate))); String returnedServiceTemplate = provider.getToscaServiceTemplateReduced(null, null); assertThat(returnedServiceTemplate).isNotNull(); @@ -185,36 +183,36 @@ class CommissioningProviderTest { var participantProvider = mock(ParticipantProvider.class); CommissioningProvider provider = - new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); - ToscaServiceTemplate serviceTemplate = - InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); + new CommissioningProvider(serviceTemplateProvider, acProvider, null, participantProvider); + ToscaServiceTemplate serviceTemplate = InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); when(serviceTemplateProvider.createServiceTemplate(serviceTemplate)).thenReturn(serviceTemplate); provider.createAutomationCompositionDefinitions(serviceTemplate); provider.initialize(); - final Map<String, Class<?>> sections = Map.of("all", ToscaServiceTemplate.class, - "data_types", ToscaDataType.class, "capability_types", ToscaCapabilityType.class, - "node_types", ToscaNodeType.class, "relationship_types", - ToscaRelationshipType.class, "policy_types", ToscaPolicyType.class, "topology_template", - ToscaTopologyTemplate.class, "node_templates", List.class); + mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); - String localServiceTemplateSchema = new String(); - Gson gson = new Gson(); - GsonBuilder builder = new GsonBuilder(); - builder.registerTypeAdapter(ToscaTopologyTemplate.class, - (JsonSerializer<ToscaTopologyTemplate>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.setPrettyPrinting(); - gson = builder.create(); + Map<String, Class<?>> sections = Map.of("all", ToscaServiceTemplate.class, "data_types", ToscaDataType.class, + "capability_types", ToscaCapabilityType.class, "node_types", ToscaNodeType.class, "relationship_types", + ToscaRelationshipType.class, "policy_types", ToscaPolicyType.class, "topology_template", + ToscaTopologyTemplate.class, "node_templates", List.class); for (Map.Entry<String, Class<?>> entry : sections.entrySet()) { String returnedServiceTemplateSchema = provider.getToscaServiceTemplateSchema(entry.getKey()); assertThat(returnedServiceTemplateSchema).isNotNull(); - if (entry.getKey().equals("topology_template")) { - localServiceTemplateSchema = gson.toJson(new ToscaTopologyTemplate()); - assertThat(localServiceTemplateSchema).isEqualTo(returnedServiceTemplateSchema); + var visitor = new SchemaFactoryWrapper(); + + if (entry.getKey().equals("node_templates")) { + mapper.acceptJsonFormatVisitor( + mapper.getTypeFactory().constructCollectionType(List.class, ToscaNodeTemplate.class), visitor); + } else { + mapper.acceptJsonFormatVisitor(mapper.constructType(entry.getValue()), visitor); } + + var jsonSchema = visitor.finalSchema(); + String localServiceTemplateSchema = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonSchema); + assertThat(localServiceTemplateSchema).isEqualTo(returnedServiceTemplateSchema); } } } diff --git a/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/rest/CommissioningControllerTest.java b/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/rest/CommissioningControllerTest.java index f9a7b20e4..87633dfd4 100644 --- a/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/rest/CommissioningControllerTest.java +++ b/runtime-acm/src/test/java/org/onap/policy/clamp/acm/runtime/commissioning/rest/CommissioningControllerTest.java @@ -29,12 +29,6 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import static org.onap.policy.clamp.acm.runtime.util.CommonTestData.TOSCA_SERVICE_TEMPLATE_YAML; import static org.onap.policy.clamp.acm.runtime.util.CommonTestData.TOSCA_ST_TEMPLATE_YAML; -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.google.gson.JsonPrimitive; -import com.google.gson.JsonSerializer; import java.util.List; import java.util.Map; import javax.ws.rs.client.Entity; @@ -82,8 +76,7 @@ class CommissioningControllerTest extends CommonRestController { @BeforeAll public static void setUpBeforeClass() { serviceTemplate = InstantiationUtils.getToscaServiceTemplate(TOSCA_SERVICE_TEMPLATE_YAML); - commonPropertiesServiceTemplate = - InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); + commonPropertiesServiceTemplate = InstantiationUtils.getToscaServiceTemplate(TOSCA_ST_TEMPLATE_YAML); } @BeforeEach @@ -143,18 +136,9 @@ class CommissioningControllerTest extends CommonRestController { Invocation.Builder invocationBuilder = super.sendRequest(COMMISSIONING_ENDPOINT + "/toscaservicetemplate"); Response rawresp = invocationBuilder.buildGet().invoke(); assertEquals(Response.Status.OK.getStatusCode(), rawresp.getStatus()); - String template = rawresp.readEntity(String.class); - final JsonObject jsonObject = new JsonParser().parse(template).getAsJsonObject(); - - Gson gson = new Gson(); - GsonBuilder builder = new GsonBuilder(); - builder.registerTypeAdapter(ToscaNodeTemplate.class, - (JsonSerializer<ToscaNodeTemplate>) (src, typeOfSrc, context) -> new JsonPrimitive(src.toString())); - builder.setPrettyPrinting(); - gson = builder.create(); - - ToscaNodeTemplate toscaNodeTemplate = gson.fromJson(jsonObject, ToscaNodeTemplate.class); - assertNotNull(toscaNodeTemplate); + ToscaServiceTemplate template = rawresp.readEntity(ToscaServiceTemplate.class); + assertNotNull(template); + assertThat(template.getNodeTypes()).hasSize(7); } @Test @@ -162,7 +146,7 @@ class CommissioningControllerTest extends CommonRestController { createFullEntryInDbWithCommonProps(); Invocation.Builder invocationBuilder = - super.sendRequest(COMMISSIONING_ENDPOINT + "/toscaServiceTemplateSchema"); + super.sendRequest(COMMISSIONING_ENDPOINT + "/toscaServiceTemplateSchema"); Response rawresp = invocationBuilder.buildGet().invoke(); assertEquals(Response.Status.OK.getStatusCode(), rawresp.getStatus()); String schema = rawresp.readEntity(String.class); @@ -174,7 +158,7 @@ class CommissioningControllerTest extends CommonRestController { createFullEntryInDbWithCommonProps(); Invocation.Builder invocationBuilder = super.sendRequest(COMMISSIONING_ENDPOINT - + "/getCommonOrInstanceProperties" + "?common=true&name=ToscaServiceTemplateSimple&version=1.0.0"); + + "/getCommonOrInstanceProperties" + "?common=true&name=ToscaServiceTemplateSimple&version=1.0.0"); Response rawresp = invocationBuilder.buildGet().invoke(); assertEquals(Response.Status.OK.getStatusCode(), rawresp.getStatus()); @@ -209,7 +193,7 @@ class CommissioningControllerTest extends CommonRestController { assertThat(commissioningResponse.getAffectedAutomationCompositionDefinitions()).hasSize(13); for (String nodeTemplateName : serviceTemplate.getToscaTopologyTemplate().getNodeTemplates().keySet()) { assertTrue(commissioningResponse.getAffectedAutomationCompositionDefinitions().stream() - .anyMatch(ac -> ac.getName().equals(nodeTemplateName))); + .anyMatch(ac -> ac.getName().equals(nodeTemplateName))); } } @@ -250,8 +234,8 @@ class CommissioningControllerTest extends CommonRestController { void testQueryElements() throws Exception { createEntryInDB(); - Invocation.Builder invocationBuilder = super.sendRequest( - COMMISSIONING_ENDPOINT + "/elements" + "?name=org.onap.domain.pmsh.PMSHAutomationCompositionDefinition"); + Invocation.Builder invocationBuilder = super.sendRequest(COMMISSIONING_ENDPOINT + "/elements" + + "?name=org.onap.domain.pmsh.PMSHAutomationCompositionDefinition"); Response rawresp = invocationBuilder.buildGet().invoke(); assertEquals(Response.Status.OK.getStatusCode(), rawresp.getStatus()); List<?> entityList = rawresp.readEntity(List.class); @@ -274,7 +258,7 @@ class CommissioningControllerTest extends CommonRestController { var serviceTemplateCreated = createEntryInDB(); Invocation.Builder invocationBuilder = super.sendRequest(COMMISSIONING_ENDPOINT + "?name=" - + serviceTemplateCreated.getName() + "&version=" + serviceTemplateCreated.getVersion()); + + serviceTemplateCreated.getName() + "&version=" + serviceTemplateCreated.getVersion()); // Call delete with no info Response resp = invocationBuilder.delete(); assertEquals(Response.Status.OK.getStatusCode(), resp.getStatus()); |