aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java')
-rw-r--r--main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java92
1 files changed, 92 insertions, 0 deletions
diff --git a/main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java b/main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java
index 2f794fd7..01892be1 100644
--- a/main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java
+++ b/main/src/test/java/org/onap/policy/api/main/rest/TestApiRestServer.java
@@ -3,6 +3,7 @@
* Copyright (C) 2018 Samsung Electronics Co., Ltd. All rights reserved.
* Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2019-2020 Nordix Foundation.
+ * Modifications Copyright (C) 2020 Bell Canada.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -47,6 +48,7 @@ import javax.ws.rs.client.Entity;
import javax.ws.rs.client.Invocation;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.Response;
+import javax.ws.rs.core.Response.Status;
import org.glassfish.jersey.client.ClientProperties;
import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature;
import org.junit.AfterClass;
@@ -197,6 +199,8 @@ public class TestApiRestServer {
"policies/vCPE.policy.operational.legacy.input.json", "policies/vDNS.policy.operational.legacy.input.json",
"policies/vFirewall.policy.operational.legacy.input.json"};
+ private static final String POLICIES_VCPE_VERSION1 = "policies/onap.restart.tca/versions/1.0.0";
+
private static PolicyModelsProviderParameters providerParams;
private static ApiParameterGroup apiParamGroup;
private static PolicyProvider policyProvider;
@@ -335,6 +339,7 @@ public class TestApiRestServer {
.getResourceAsString(TOSCA_POLICY_RESOURCE_NAMES[TOSCA_POLICIES_RESOURCE_NAMES.length - 1]);
toscaPolicy = toscaPolicy.replaceAll("onap.policies.monitoring.cdap.tca.hi.lo.app", "IDontExist");
+ toscaPolicy = toscaPolicy.replaceAll("onap.restart.tca", "onap.restart.tca.IDontExist");
TextFileUtils.putStringAsTextFile(toscaPolicy, "src/test/resources/policies/BadTestPolicy.yaml");
Response rawResponse2 = createResource(POLICIES, "src/test/resources/policies/BadTestPolicy.yaml");
@@ -836,6 +841,93 @@ public class TestApiRestServer {
assertEquals("policy operational.scaleout:1.0.0 not found", errorResponse.getErrorMessage());
}
+ @Test
+ public void testGetPoliciesJson() throws Exception {
+ getPolicies(APP_JSON);
+ }
+
+ @Test
+ public void testGetPoliciesYaml() throws Exception {
+ getPolicies(APP_YAML);
+ }
+
+ private void getPolicies(String mediaType) throws Exception {
+ for (String resrcName : TOSCA_POLICYTYPE_RESOURCE_NAMES) {
+ Response rawResponse = createResource(POLICYTYPES, resrcName);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ ToscaServiceTemplate response = rawResponse.readEntity(ToscaServiceTemplate.class);
+ assertThat(response).isNotNull();
+ assertThat(response.getPolicyTypes()).isNotEmpty();
+ }
+ for (String resrcName : TOSCA_POLICY_RESOURCE_NAMES) {
+ Response rawResponse = createResource(POLICYTYPES_TCA_POLICIES, resrcName);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ }
+ Response rawResponse = readResource(POLICIES, mediaType);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ ToscaServiceTemplate response = rawResponse.readEntity(ToscaServiceTemplate.class);
+ assertThat(response.getToscaTopologyTemplate().getPolicies()).isNotEmpty();
+ }
+
+ @Test
+ public void testGetSpecificPolicyJson() throws Exception {
+ getSpecificPolicy(APP_JSON);
+ }
+
+ @Test
+ public void testGetSpecificPolicyYaml() throws Exception {
+ getSpecificPolicy(APP_YAML);
+ }
+
+ private void getSpecificPolicy(String mediaType) throws Exception {
+ for (String resrcName : TOSCA_POLICYTYPE_RESOURCE_NAMES) {
+ Response rawResponse = createResource(POLICYTYPES, resrcName);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ ToscaServiceTemplate response = rawResponse.readEntity(ToscaServiceTemplate.class);
+ assertThat(response).isNotNull();
+ assertThat(response.getPolicyTypes()).isNotEmpty();
+ }
+ for (String resrcName : TOSCA_POLICY_RESOURCE_NAMES) {
+ Response rawResponse = createResource(POLICYTYPES_TCA_POLICIES, resrcName);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ }
+ Response rawResponse = readResource(POLICIES_VCPE_VERSION1, mediaType);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ ToscaServiceTemplate response = rawResponse.readEntity(ToscaServiceTemplate.class);
+ assertThat(response.getToscaTopologyTemplate().getPolicies()).hasSize(1);
+ }
+
+ @Test
+ public void testDeleteSpecificPolicy() throws Exception {
+ Response rawResponse;
+ for (String resrcName : TOSCA_POLICYTYPE_RESOURCE_NAMES) {
+ rawResponse = createResource(POLICYTYPES, resrcName);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ ToscaServiceTemplate response = rawResponse.readEntity(ToscaServiceTemplate.class);
+ assertThat(response).isNotNull();
+ assertThat(response.getPolicyTypes()).isNotEmpty();
+ }
+ for (String resrcName : TOSCA_POLICY_RESOURCE_NAMES) {
+ rawResponse = createResource(POLICYTYPES_TCA_POLICIES, resrcName);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+ }
+
+ rawResponse = readResource(POLICIES_VCPE_VERSION1, APP_JSON);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+
+ // delete a particular policy
+ rawResponse = deleteResource(POLICIES_VCPE_VERSION1, APP_JSON);
+ assertThat(rawResponse.getStatus()).isEqualTo(Response.Status.OK.getStatusCode());
+
+ rawResponse = readResource(POLICIES_VCPE_VERSION1, APP_JSON);
+ assertThat(rawResponse.getStatus()).isEqualTo(Status.NOT_FOUND.getStatusCode());
+
+ rawResponse = deleteResource(POLICIES_VCPE_VERSION1, APP_JSON);
+ assertThat(rawResponse.getStatus()).isEqualTo(Status.NOT_FOUND.getStatusCode());
+
+ }
+
+
private Response createResource(String endpoint, String resourceName) throws Exception {
String mediaType = APP_JSON; // default media type