diff options
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.java | 92 |
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 |