aboutsummaryrefslogtreecommitdiffstats
path: root/participant/participant-impl/participant-impl-http/src/test/java/utils
diff options
context:
space:
mode:
authorrameshiyer27 <ramesh.murugan.iyer@est.tech>2021-07-20 07:57:41 +0100
committerrameshiyer27 <ramesh.murugan.iyer@est.tech>2021-07-29 16:30:11 +0100
commit23e25e89619c732a687b44a5487afbb6badf613c (patch)
tree76641d98717f826bf1df96357a7db815cf899b25 /participant/participant-impl/participant-impl-http/src/test/java/utils
parent931424fc681b1d41afbba98a190253283f9a6eba (diff)
Implement http participant in CLAMP
Issue-ID: POLICY-3449 Signed-off-by: zrrmmua <ramesh.murugan.iyer@est.tech> Change-Id: Ibfe23a6e98fb760a930b6080dc2291113b3cb4fa
Diffstat (limited to 'participant/participant-impl/participant-impl-http/src/test/java/utils')
-rw-r--r--participant/participant-impl/participant-impl-http/src/test/java/utils/CommonTestData.java146
-rw-r--r--participant/participant-impl/participant-impl-http/src/test/java/utils/ToscaUtils.java48
2 files changed, 194 insertions, 0 deletions
diff --git a/participant/participant-impl/participant-impl-http/src/test/java/utils/CommonTestData.java b/participant/participant-impl/participant-impl-http/src/test/java/utils/CommonTestData.java
new file mode 100644
index 000000000..84957edfa
--- /dev/null
+++ b/participant/participant-impl/participant-impl-http/src/test/java/utils/CommonTestData.java
@@ -0,0 +1,146 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2021 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package utils;
+
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+import org.onap.policy.clamp.controlloop.models.controlloop.concepts.ControlLoopElement;
+import org.onap.policy.clamp.controlloop.models.controlloop.concepts.ControlLoopOrderedState;
+import org.onap.policy.clamp.controlloop.participant.http.main.models.ConfigurationEntity;
+import org.onap.policy.clamp.controlloop.participant.http.main.models.RestParams;
+import org.onap.policy.common.utils.coder.Coder;
+import org.onap.policy.common.utils.coder.StandardCoder;
+import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
+
+public class CommonTestData {
+
+ private static final Coder CODER = new StandardCoder();
+ private static final String TEST_KEY_NAME = "org.onap.domain.database.Http_PMSHMicroserviceControlLoopElement";
+
+
+ /**
+ * Get a controlLoop Element.
+ * @return controlLoopElement object
+ */
+ public ControlLoopElement getControlLoopElement() {
+ ControlLoopElement element = new ControlLoopElement();
+ element.setId(UUID.randomUUID());
+ element.setDefinition(new ToscaConceptIdentifier(TEST_KEY_NAME, "1.0.1"));
+ element.setOrderedState(ControlLoopOrderedState.PASSIVE);
+ return element;
+ }
+
+ /**
+ * Get query params.
+ * @return Map of query params
+ */
+ public Map<String, String> getQueryParams() {
+ return Map.of("name", "dummy", "version", "1.0");
+ }
+
+ /**
+ * Get path params.
+ * @return Map of path params
+ */
+ public Map<String, Object> getPathParams() {
+ return Map.of("id", "123", "name", "dummy");
+ }
+
+ /**
+ * Rest params with GET request.
+ * @return RestParams obj
+ */
+ public RestParams restParamsWithGet() {
+ return new RestParams(
+ new ToscaConceptIdentifier("getRequest", "1.0"),
+ "GET",
+ "get",
+ 200,
+ null,
+ getQueryParams(),
+ null
+ );
+ }
+
+ /**
+ * Rest params with POST request.
+ * @return RestParams obj
+ */
+ public RestParams restParamsWithPost() {
+ return new RestParams(
+ new ToscaConceptIdentifier("postRequest", "1.0"),
+ "POST",
+ "post",
+ 200,
+ null,
+ getQueryParams(),
+ "Test body"
+ );
+ }
+
+ /**
+ * Rest params with POST request.
+ * @return RestParams obj
+ */
+ public RestParams restParamsWithInvalidPost() {
+ return new RestParams(
+ new ToscaConceptIdentifier("postRequest", "1.0"),
+ "POST",
+ "post/{id}/{name}",
+ 200,
+ getPathParams(),
+ getQueryParams(),
+ "Test body"
+ );
+ }
+
+ /**
+ * Get invalid configuration entity.
+ * @return ConfigurationEntity obj
+ */
+ public ConfigurationEntity getInvalidConfigurationEntity() {
+ return new ConfigurationEntity(
+ new ToscaConceptIdentifier("config1", "1.0.1"),
+ List.of(restParamsWithGet(), restParamsWithInvalidPost())
+ );
+ }
+
+ /**
+ * Get configuration entity.
+ * @return ConfigurationEntity obj
+ */
+ public ConfigurationEntity getConfigurationEntity() {
+ return new ConfigurationEntity(
+ new ToscaConceptIdentifier("config1", "1.0.1"),
+ List.of(restParamsWithGet(), restParamsWithPost())
+ );
+ }
+
+ /**
+ * Get headers for config request.
+ * @return Map of headers
+ */
+ public Map<String, String> getHeaders() {
+ return Map.of("Content-Type", "application/json", "Accept", "application/json");
+ }
+
+}
diff --git a/participant/participant-impl/participant-impl-http/src/test/java/utils/ToscaUtils.java b/participant/participant-impl/participant-impl-http/src/test/java/utils/ToscaUtils.java
new file mode 100644
index 000000000..cf71248c3
--- /dev/null
+++ b/participant/participant-impl/participant-impl-http/src/test/java/utils/ToscaUtils.java
@@ -0,0 +1,48 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2021 Nordix Foundation.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ * ============LICENSE_END=========================================================
+ */
+
+package utils;
+
+import org.onap.policy.common.utils.coder.YamlJsonTranslator;
+import org.onap.policy.common.utils.resources.ResourceUtils;
+import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate;
+
+/**
+ * Util class for Test scope.
+ */
+public class ToscaUtils {
+
+ private static final YamlJsonTranslator yamlTranslator = new YamlJsonTranslator();
+ private static final String TOSCA_TEMPLATE_YAML = "src/test/resources/HttpParticipantConfig.yaml";
+
+
+ /**
+ * Read a service template yaml.
+ * @return ToscaServiceTemplate
+ */
+ public static ToscaServiceTemplate readControlLoopFromTosca() {
+ return serializeControlLoopYaml(TOSCA_TEMPLATE_YAML);
+ }
+
+ private static ToscaServiceTemplate serializeControlLoopYaml(String controlLoopFilePath) {
+ String controlLoopString = ResourceUtils.getResourceAsString(controlLoopFilePath);
+ return yamlTranslator.fromYaml(controlLoopString, ToscaServiceTemplate.class);
+ }
+}