X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=models-tosca%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fmodels%2Ftosca%2Flegacy%2Fprovider%2FLegacyProvider4LegacyGuardTest.java;h=047ef4891e8f09597d9555def41d030f0a033c9d;hb=2358a161a4bbd0f0c97696b61fd725c33f7267e6;hp=6ddf1aeeb3bd71c0397a7276e62f78e9d55d98a7;hpb=f53879588a464c727ece62f87c7625b47e6de7f1;p=policy%2Fmodels.git diff --git a/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/provider/LegacyProvider4LegacyGuardTest.java b/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/provider/LegacyProvider4LegacyGuardTest.java index 6ddf1aeeb..047ef4891 100644 --- a/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/provider/LegacyProvider4LegacyGuardTest.java +++ b/models-tosca/src/test/java/org/onap/policy/models/tosca/legacy/provider/LegacyProvider4LegacyGuardTest.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2019 Nordix Foundation. + * Copyright (C) 2019-2020 Nordix Foundation. + * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,10 +53,14 @@ import org.yaml.snakeyaml.Yaml; * @author Liam Fallon (liam.fallon@est.tech) */ public class LegacyProvider4LegacyGuardTest { + private static final String POLICY_ID_IS_NULL = "^policyId is marked .*on.*ull but is null$"; + private static final String VDNS_OUTPUT_JSON = "policies/vDNS.policy.guard.frequency.output.json"; + private static final String VDNS_INPUT_JSON = "policies/vDNS.policy.guard.frequency.input.json"; + private static final String LEGACY_POLICY_IS_NULL = "^legacyGuardPolicy is marked .*on.*ull but is null$"; + private static final String DAO_IS_NULL = "^dao is marked .*on.*ull but is null$"; private PfDao pfDao; private StandardCoder standardCoder; - /** * Set up the DAO towards the database. * @@ -64,7 +69,7 @@ public class LegacyProvider4LegacyGuardTest { @Before public void setupDao() throws Exception { final DaoParameters daoParameters = new DaoParameters(); - daoParameters.setPluginClass(DefaultPfDao.class.getCanonicalName()); + daoParameters.setPluginClass(DefaultPfDao.class.getName()); daoParameters.setPersistenceUnit("ToscaConceptTest"); @@ -91,33 +96,32 @@ public class LegacyProvider4LegacyGuardTest { } @After - public void teardown() throws Exception { + public void teardown() { pfDao.close(); } @Test public void testPoliciesGet() throws Exception { assertThatThrownBy(() -> { - new LegacyProvider().getGuardPolicy(null, null); - }).hasMessage("dao is marked @NonNull but is null"); + new LegacyProvider().getGuardPolicy(null, null, null); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { - new LegacyProvider().getGuardPolicy(null, ""); - }).hasMessage("dao is marked @NonNull but is null"); + new LegacyProvider().getGuardPolicy(null, null, ""); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { - new LegacyProvider().getGuardPolicy(pfDao, null); - }).hasMessage("policyId is marked @NonNull but is null"); + new LegacyProvider().getGuardPolicy(pfDao, null, null); + }).hasMessageMatching(POLICY_ID_IS_NULL); assertThatThrownBy(() -> { - new LegacyProvider().getGuardPolicy(pfDao, "I Dont Exist"); - }).hasMessage("no policy found for policy ID: I Dont Exist"); + new LegacyProvider().getGuardPolicy(pfDao, "I Dont Exist", null); + }).hasMessage("no policy found for policy: I Dont Exist:null"); createPolicyTypes(); - LegacyGuardPolicyInput originalGip = standardCoder.decode( - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.input.json"), - LegacyGuardPolicyInput.class); + LegacyGuardPolicyInput originalGip = + standardCoder.decode(ResourceUtils.getResourceAsString(VDNS_INPUT_JSON), LegacyGuardPolicyInput.class); assertNotNull(originalGip); @@ -128,38 +132,50 @@ public class LegacyProvider4LegacyGuardTest { createdGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); Map gotGopm = - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); assertEquals(originalGip.getPolicyId(), gotGopm.keySet().iterator().next()); assertEquals(originalGip.getContent(), gotGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); - String expectedJsonOutput = - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.output.json"); + String expectedJsonOutput = ResourceUtils.getResourceAsString(VDNS_OUTPUT_JSON); String actualJsonOutput = standardCoder.encode(gotGopm); assertEquals(expectedJsonOutput.replaceAll("\\s+", ""), actualJsonOutput.replaceAll("\\s+", "")); + + gotGopm = new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), "1"); + + assertEquals(originalGip.getPolicyId(), gotGopm.keySet().iterator().next()); + assertEquals(originalGip.getContent(), + gotGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); + + actualJsonOutput = standardCoder.encode(gotGopm); + + assertEquals(expectedJsonOutput.replaceAll("\\s+", ""), actualJsonOutput.replaceAll("\\s+", "")); + + assertThatThrownBy(() -> { + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), "2"); + }).hasMessage("no policy found for policy: guard.frequency.scaleout:2"); } @Test public void testPolicyCreate() throws Exception { assertThatThrownBy(() -> { new LegacyProvider().createGuardPolicy(null, null); - }).hasMessage("dao is marked @NonNull but is null"); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { new LegacyProvider().createGuardPolicy(null, new LegacyGuardPolicyInput()); - }).hasMessage("dao is marked @NonNull but is null"); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { new LegacyProvider().createGuardPolicy(pfDao, null); - }).hasMessage("legacyGuardPolicy is marked @NonNull but is null"); + }).hasMessageMatching(LEGACY_POLICY_IS_NULL); createPolicyTypes(); - LegacyGuardPolicyInput originalGip = standardCoder.decode( - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.input.json"), - LegacyGuardPolicyInput.class); + LegacyGuardPolicyInput originalGip = + standardCoder.decode(ResourceUtils.getResourceAsString(VDNS_INPUT_JSON), LegacyGuardPolicyInput.class); assertNotNull(originalGip); @@ -170,32 +186,59 @@ public class LegacyProvider4LegacyGuardTest { createdGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); Map gotGopm = - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); assertEquals(originalGip.getPolicyId(), gotGopm.keySet().iterator().next()); assertEquals(originalGip.getContent(), gotGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); - String expectedJsonOutput = - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.output.json"); + String expectedJsonOutput = ResourceUtils.getResourceAsString(VDNS_OUTPUT_JSON); String actualJsonOutput = standardCoder.encode(gotGopm); assertEquals(expectedJsonOutput.replaceAll("\\s+", ""), actualJsonOutput.replaceAll("\\s+", "")); } + @Test + public void testPolicyCreateBad() throws Exception { + assertThatThrownBy(() -> { + new LegacyProvider().createGuardPolicy(null, null); + }).hasMessageMatching(DAO_IS_NULL); + + assertThatThrownBy(() -> { + new LegacyProvider().createGuardPolicy(null, new LegacyGuardPolicyInput()); + }).hasMessageMatching(DAO_IS_NULL); + + assertThatThrownBy(() -> { + new LegacyProvider().createGuardPolicy(pfDao, null); + }).hasMessageMatching(LEGACY_POLICY_IS_NULL); + + createPolicyTypes(); + + LegacyGuardPolicyInput originalGip = + standardCoder.decode(ResourceUtils.getResourceAsString(VDNS_INPUT_JSON), LegacyGuardPolicyInput.class); + + assertNotNull(originalGip); + + originalGip.setPolicyId("i.do.not.exist"); + + assertThatThrownBy(() -> { + new LegacyProvider().createGuardPolicy(pfDao, originalGip); + }).hasMessage("policy type for guard policy \"i.do.not.exist\" unknown"); + } + @Test public void testPolicyUpdate() throws Exception { assertThatThrownBy(() -> { new LegacyProvider().updateGuardPolicy(null, null); - }).hasMessage("dao is marked @NonNull but is null"); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { new LegacyProvider().updateGuardPolicy(null, new LegacyGuardPolicyInput()); - }).hasMessage("dao is marked @NonNull but is null"); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { new LegacyProvider().updateGuardPolicy(pfDao, null); - }).hasMessage("legacyGuardPolicy is marked @NonNull but is null"); + }).hasMessageMatching(LEGACY_POLICY_IS_NULL); assertThatThrownBy(() -> { new LegacyProvider().updateGuardPolicy(pfDao, new LegacyGuardPolicyInput()); @@ -203,9 +246,8 @@ public class LegacyProvider4LegacyGuardTest { createPolicyTypes(); - LegacyGuardPolicyInput originalGip = standardCoder.decode( - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.input.json"), - LegacyGuardPolicyInput.class); + LegacyGuardPolicyInput originalGip = + standardCoder.decode(ResourceUtils.getResourceAsString(VDNS_INPUT_JSON), LegacyGuardPolicyInput.class); assertNotNull(originalGip); @@ -215,7 +257,7 @@ public class LegacyProvider4LegacyGuardTest { createdGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); Map gotGopm = - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); assertEquals(originalGip.getPolicyId(), gotGopm.keySet().iterator().next()); assertEquals(originalGip.getContent(), @@ -228,7 +270,7 @@ public class LegacyProvider4LegacyGuardTest { updatedGp.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); Map gotUpdatedGopm = - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); assertEquals(originalGip.getPolicyId(), gotUpdatedGopm.keySet().iterator().next()); assertEquals(originalGip.getContent(), gotUpdatedGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); @@ -236,31 +278,44 @@ public class LegacyProvider4LegacyGuardTest { gotUpdatedGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next().getRecipe()); } - @Test public void testPoliciesDelete() throws Exception { assertThatThrownBy(() -> { - new LegacyProvider().deleteGuardPolicy(null, null); - }).hasMessage("dao is marked @NonNull but is null"); + new LegacyProvider().deleteGuardPolicy(null, null, null); + }).hasMessageMatching(DAO_IS_NULL); + + assertThatThrownBy(() -> { + new LegacyProvider().deleteGuardPolicy(null, null, ""); + }).hasMessageMatching(DAO_IS_NULL); + + assertThatThrownBy(() -> { + new LegacyProvider().deleteGuardPolicy(null, "", null); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { - new LegacyProvider().deleteGuardPolicy(null, ""); - }).hasMessage("dao is marked @NonNull but is null"); + new LegacyProvider().deleteGuardPolicy(null, "", ""); + }).hasMessageMatching(DAO_IS_NULL); assertThatThrownBy(() -> { - new LegacyProvider().deleteGuardPolicy(pfDao, null); - }).hasMessage("policyId is marked @NonNull but is null"); + new LegacyProvider().deleteGuardPolicy(pfDao, null, null); + }).hasMessageMatching(POLICY_ID_IS_NULL); + assertThatThrownBy(() -> { + new LegacyProvider().deleteGuardPolicy(pfDao, null, ""); + }).hasMessageMatching(POLICY_ID_IS_NULL); + + assertThatThrownBy(() -> { + new LegacyProvider().deleteGuardPolicy(pfDao, "", null); + }).hasMessageMatching("^policyVersion is marked .*on.*ull but is null$"); assertThatThrownBy(() -> { - new LegacyProvider().deleteGuardPolicy(pfDao, "I Dont Exist"); - }).hasMessage("no policy found for policy ID: I Dont Exist"); + new LegacyProvider().deleteGuardPolicy(pfDao, "IDontExist", "0"); + }).hasMessage("no policy found for policy: IDontExist:0"); createPolicyTypes(); - LegacyGuardPolicyInput originalGip = standardCoder.decode( - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.input.json"), - LegacyGuardPolicyInput.class); + LegacyGuardPolicyInput originalGip = + standardCoder.decode(ResourceUtils.getResourceAsString(VDNS_INPUT_JSON), LegacyGuardPolicyInput.class); assertNotNull(originalGip); @@ -270,30 +325,33 @@ public class LegacyProvider4LegacyGuardTest { createdGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); Map gotGopm = - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); assertEquals(originalGip.getPolicyId(), gotGopm.keySet().iterator().next()); assertEquals(originalGip.getContent(), gotGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); - String expectedJsonOutput = - ResourceUtils.getResourceAsString("policies/vDNS.policy.guard.frequency.output.json"); + String expectedJsonOutput = ResourceUtils.getResourceAsString(VDNS_OUTPUT_JSON); String actualJsonOutput = standardCoder.encode(gotGopm); assertEquals(expectedJsonOutput.replaceAll("\\s+", ""), actualJsonOutput.replaceAll("\\s+", "")); + assertThatThrownBy(() -> { + new LegacyProvider().deleteGuardPolicy(pfDao, originalGip.getPolicyId(), null); + }).hasMessageMatching("^policyVersion is marked .*on.*ull but is null$"); + Map deletedGopm = - new LegacyProvider().deleteGuardPolicy(pfDao, originalGip.getPolicyId()); + new LegacyProvider().deleteGuardPolicy(pfDao, originalGip.getPolicyId(), "1"); assertEquals(originalGip.getPolicyId(), deletedGopm.keySet().iterator().next()); assertEquals(originalGip.getContent(), deletedGopm.get(originalGip.getPolicyId()).getProperties().values().iterator().next()); assertThatThrownBy(() -> { - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); - }).hasMessage("no policy found for policy ID: guard.frequency.scaleout"); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); + }).hasMessage("no policy found for policy: guard.frequency.scaleout:null"); LegacyGuardPolicyInput otherGip = new LegacyGuardPolicyInput(); - otherGip.setPolicyId("guard.blacklist"); + otherGip.setPolicyId("guard.blacklist.b0"); otherGip.setPolicyVersion("1"); otherGip.setContent(new LegacyGuardPolicyContent()); @@ -303,8 +361,8 @@ public class LegacyProvider4LegacyGuardTest { createdOtherGopm.get(otherGip.getPolicyId()).getProperties().values().iterator().next()); assertThatThrownBy(() -> { - new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId()); - }).hasMessage("no policy found for policy ID: guard.frequency.scaleout"); + new LegacyProvider().getGuardPolicy(pfDao, originalGip.getPolicyId(), null); + }).hasMessage("no policy found for policy: guard.frequency.scaleout:null"); } private void createPolicyTypes() throws CoderException, PfModelException {