X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=main%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fapi%2Fmain%2Frest%2Fprovider%2FTestPolicyProvider.java;h=2e4317045f40cab699b7384dacc0c62d8fea9fec;hb=c0feaca7b641f6c0e3214f5333a1493c9893e0cb;hp=e81cbf45cea6f33424beaa8f0e40aba258b51d23;hpb=20390c6ed94e2082cb688d76aacabe5366d908fe;p=policy%2Fapi.git diff --git a/main/src/test/java/org/onap/policy/api/main/rest/provider/TestPolicyProvider.java b/main/src/test/java/org/onap/policy/api/main/rest/provider/TestPolicyProvider.java index e81cbf45..2e431704 100644 --- a/main/src/test/java/org/onap/policy/api/main/rest/provider/TestPolicyProvider.java +++ b/main/src/test/java/org/onap/policy/api/main/rest/provider/TestPolicyProvider.java @@ -75,6 +75,19 @@ public class TestPolicyProvider { private static final String POLICY_RESOURCE_WITH_BAD_POLICYTYPE_ID = "policies/vCPE.policy.bad.policytypeid.json"; private static final String POLICY_RESOURCE_WITH_BAD_POLICYTYPE_VERSION = "policies/vCPE.policy.bad.policytypeversion.json"; + private static final String MULTIPLE_POLICIES_RESOURCE = "policies/vCPE.policies.optimization.input.tosca.json"; + + // @formatter:off + private String[] toscaPolicyTypeResourceNames = { + "policytypes/onap.policies.optimization.AffinityPolicy.yaml", + "policytypes/onap.policies.optimization.DistancePolicy.yaml", + "policytypes/onap.policies.optimization.HpaPolicy.yaml", + "policytypes/onap.policies.optimization.QueryPolicy.yaml", + "policytypes/onap.policies.optimization.SubscriberPolicy.yaml", + "policytypes/onap.policies.optimization.Vim_fit.yaml", + "policytypes/onap.policies.optimization.VnfPolicy.yaml" + }; + // @formatter:on /** * Initializes parameters. @@ -268,6 +281,32 @@ public class TestPolicyProvider { }).doesNotThrowAnyException(); } + @Test + public void testSimpleCreatePolicy() throws Exception { + + String errorMessage = "policy type onap.policies.optimization.AffinityPolicy:0.0.0 for " + + "policy OSDF_CASABLANCA.Affinity_vCPE_1:1.0.0 does not exist"; + assertThatThrownBy(() -> { + String multiPoliciesString = ResourceUtils.getResourceAsString(MULTIPLE_POLICIES_RESOURCE); + ToscaServiceTemplate multiPoliciesServiceTemplate = + standardCoder.decode(multiPoliciesString, ToscaServiceTemplate.class); + policyProvider.createPolicies(multiPoliciesServiceTemplate); + }).hasMessage(errorMessage); + + // Create required policy types + for (String policyTypeName : toscaPolicyTypeResourceNames) { + ToscaServiceTemplate policyTypeServiceTemplate = standardYamlCoder.decode( + ResourceUtils.getResourceAsString(policyTypeName), ToscaServiceTemplate.class); + policyTypeProvider.createPolicyType(policyTypeServiceTemplate); + } + + // Create multiple policies in one call + String multiPoliciesString = ResourceUtils.getResourceAsString(MULTIPLE_POLICIES_RESOURCE); + ToscaServiceTemplate multiPoliciesServiceTemplate = + standardCoder.decode(multiPoliciesString, ToscaServiceTemplate.class); + policyProvider.createPolicies(multiPoliciesServiceTemplate); + } + @Test public void testDeletePolicy() {