diff options
Diffstat (limited to 'models-provider/src/test/java')
4 files changed, 3 insertions, 250 deletions
diff --git a/models-provider/src/test/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderTest.java b/models-provider/src/test/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderTest.java index 2a52c87ea..ac42304fd 100644 --- a/models-provider/src/test/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderTest.java +++ b/models-provider/src/test/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderTest.java @@ -2,6 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2019-2020 Nordix Foundation. * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2020 Bell Canada. 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. @@ -48,7 +49,6 @@ import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyIdentifier; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeFilter; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeIdentifier; import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; -import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; /** * Test the database models provider implementation. @@ -60,8 +60,6 @@ public class DatabasePolicyModelsProviderTest { private static final String TEMPLATE_IS_NULL = "^serviceTemplate is marked .*on.*ull but is null$"; - private static final String POLICY_ID_IS_NULL = "^policyId is marked .*on.*ull but is null$"; - private static final String SUBGROUP_IS_NULL = "^pdpSubGroup is marked .*on.*ull but is null$"; private static final String GROUP_IS_NULL = "^pdpGroupName is marked .*on.*ull but is null$"; @@ -70,8 +68,6 @@ public class DatabasePolicyModelsProviderTest { private static final String FILTER_IS_NULL = "^filter is marked .*on.*ull but is null$"; - private static final String POLICY_ID = "policy_id"; - private static final String GROUP = "group"; private static final String VERSION_100 = "1.0.0"; @@ -195,38 +191,6 @@ public class DatabasePolicyModelsProviderTest { }).hasMessageMatching("^version is marked .*on.*ull but is null$"); assertThatThrownBy(() -> { - databaseProvider.getOperationalPolicy(null, null); - }).hasMessageMatching(POLICY_ID_IS_NULL); - - assertThatThrownBy(() -> { - databaseProvider.getOperationalPolicy(null, ""); - }).hasMessageMatching(POLICY_ID_IS_NULL); - - assertThatThrownBy(() -> { - databaseProvider.getOperationalPolicy("", null); - }).hasMessage("service template not found in database"); - - assertThatThrownBy(() -> { - databaseProvider.createOperationalPolicy(null); - }).hasMessageMatching("^legacyOperationalPolicy is marked .*on.*ull but is null$"); - - assertThatThrownBy(() -> { - databaseProvider.updateOperationalPolicy(null); - }).hasMessageMatching("^legacyOperationalPolicy is marked .*on.*ull but is null$"); - - assertThatThrownBy(() -> { - databaseProvider.deleteOperationalPolicy(null, null); - }).hasMessageMatching(POLICY_ID_IS_NULL); - - assertThatThrownBy(() -> { - databaseProvider.deleteOperationalPolicy(null, ""); - }).hasMessageMatching(POLICY_ID_IS_NULL); - - assertThatThrownBy(() -> { - databaseProvider.deleteOperationalPolicy("", null); - }).hasMessageMatching("^policyVersion is marked .*on.*ull but is null$"); - - assertThatThrownBy(() -> { databaseProvider.getFilteredPdpGroups(null); }).hasMessageMatching(FILTER_IS_NULL); @@ -368,26 +332,6 @@ public class DatabasePolicyModelsProviderTest { assertThatThrownBy(() -> databaseProvider.deletePolicy("Policy", "0.0.0").getToscaTopologyTemplate()) .hasMessage("service template not found in database"); - assertThatThrownBy(() -> { - databaseProvider.getOperationalPolicy(POLICY_ID, null); - }).hasMessage("service template not found in database"); - - assertThatThrownBy(() -> { - databaseProvider.getOperationalPolicy(POLICY_ID, "10"); - }).hasMessage("service template not found in database"); - - assertThatThrownBy(() -> { - databaseProvider.createOperationalPolicy(new LegacyOperationalPolicy()); - }).hasMessageMatching(NAME_IS_NULL); - - assertThatThrownBy(() -> { - databaseProvider.updateOperationalPolicy(new LegacyOperationalPolicy()); - }).hasMessageMatching(NAME_IS_NULL); - - assertThatThrownBy(() -> { - databaseProvider.deleteOperationalPolicy(POLICY_ID, "55"); - }).hasMessage("service template not found in database"); - assertEquals(0, databaseProvider.getPdpGroups(NAME).size()); assertEquals(0, databaseProvider.getFilteredPdpGroups(PdpGroupFilter.builder().build()).size()); diff --git a/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyBadProviderImpl.java b/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyBadProviderImpl.java index 80680c1fd..453f86633 100644 --- a/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyBadProviderImpl.java +++ b/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyBadProviderImpl.java @@ -2,6 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2019-2020 Nordix Foundation. * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2020 Bell Canada. 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. @@ -40,7 +41,6 @@ import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyFilter; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyType; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeFilter; import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; -import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; /** * Dummy implementation of {@link PolicyModelsProvider} with bad constructor. @@ -105,30 +105,6 @@ public class DummyBadProviderImpl implements PolicyModelsProvider { } @Override - public LegacyOperationalPolicy getOperationalPolicy(@NonNull final String policyId, final String policyVersion) - throws PfModelException { - return null; - } - - @Override - public LegacyOperationalPolicy createOperationalPolicy(@NonNull LegacyOperationalPolicy legacyOperationalPolicy) - throws PfModelException { - return null; - } - - @Override - public LegacyOperationalPolicy updateOperationalPolicy(@NonNull LegacyOperationalPolicy legacyOperationalPolicy) - throws PfModelException { - return null; - } - - @Override - public LegacyOperationalPolicy deleteOperationalPolicy(@NonNull String policyId, - @NonNull final String policyVersion) throws PfModelException { - return null; - } - - @Override public List<PdpGroup> getPdpGroups(String name) throws PfModelException { return Collections.emptyList(); } diff --git a/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderTest.java b/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderTest.java index 484922e20..7fc37afe9 100644 --- a/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderTest.java +++ b/models-provider/src/test/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderTest.java @@ -2,6 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2019-2020 Nordix Foundation. * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Modifications Copyright (C) 2020 Bell Canada. 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. @@ -39,7 +40,6 @@ import org.onap.policy.models.provider.PolicyModelsProviderParameters; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyFilter; import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeFilter; import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; -import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; /** * Test the dummy models provider implementation. @@ -48,7 +48,6 @@ import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; */ public class DummyPolicyModelsProviderTest { - private static final String POLICY_ID = "policy_id"; private static final String VERSION = "version"; @Test @@ -96,11 +95,6 @@ public class DummyPolicyModelsProviderTest { assertNotNull(dummyProvider.updatePolicies(new ToscaServiceTemplate())); assertNotNull(dummyProvider.deletePolicy("name", VERSION)); - assertNotNull(dummyProvider.getOperationalPolicy(POLICY_ID, "1")); - assertNotNull(dummyProvider.createOperationalPolicy(new LegacyOperationalPolicy())); - assertNotNull(dummyProvider.updateOperationalPolicy(new LegacyOperationalPolicy())); - assertNotNull(dummyProvider.deleteOperationalPolicy(POLICY_ID, "1")); - assertTrue(dummyProvider.getPdpGroups("name").isEmpty()); assertTrue(dummyProvider.getFilteredPdpGroups(PdpGroupFilter.builder().build()).isEmpty()); assertTrue(dummyProvider.createPdpGroups(new ArrayList<>()).isEmpty()); diff --git a/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyLegacyOperationalPersistenceTest.java b/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyLegacyOperationalPersistenceTest.java deleted file mode 100644 index e0250dc3a..000000000 --- a/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyLegacyOperationalPersistenceTest.java +++ /dev/null @@ -1,161 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2019-2020 Nordix Foundation. - * Modifications Copyright (C) 2020 AT&T. - * ================================================================================ - * 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 org.onap.policy.models.provider.impl; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; - -import java.net.URISyntaxException; -import java.util.Base64; -import java.util.Set; -import lombok.NonNull; -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.onap.policy.common.utils.coder.CoderException; -import org.onap.policy.common.utils.coder.StandardCoder; -import org.onap.policy.common.utils.resources.ResourceUtils; -import org.onap.policy.models.base.PfModelException; -import org.onap.policy.models.provider.PolicyModelsProvider; -import org.onap.policy.models.provider.PolicyModelsProviderFactory; -import org.onap.policy.models.provider.PolicyModelsProviderParameters; -import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; -import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; -import org.yaml.snakeyaml.Yaml; - -/** - * Test persistence of monitoring policies to and from the database. - * - * @author Liam Fallon (liam.fallon@est.tech) - */ -public class PolicyLegacyOperationalPersistenceTest { - private StandardCoder standardCoder; - - private PolicyModelsProvider databaseProvider; - - // @formatter:off - private String[] policyInputResourceNames = { - "policies/vCPE.policy.operational.legacy.input.json", - "policies/vDNS.policy.operational.legacy.input.json", - "policies/vFirewall.policy.operational.legacy.input.json" - }; - - private String[] policyOutputResourceNames = { - "policies/vCPE.policy.operational.legacy.output.json", - "policies/vDNS.policy.operational.legacy.output.json", - "policies/vFirewall.policy.operational.legacy.output.json" - }; - // @formatter:on - - /** - * Initialize provider. - * - * @throws PfModelException on exceptions in the tests - * @throws CoderException on JSON encoding and decoding errors - */ - @Before - public void setupParameters() throws Exception { - // H2, use "org.mariadb.jdbc.Driver" and "jdbc:mariadb://localhost:3306/policy" for locally installed MariaDB - - PolicyModelsProviderParameters parameters = new PolicyModelsProviderParameters(); - parameters.setDatabaseDriver("org.h2.Driver"); - parameters.setDatabaseUrl("jdbc:h2:mem:testdb"); - parameters.setDatabaseUser("policy"); - parameters.setDatabasePassword(Base64.getEncoder().encodeToString("P01icY".getBytes())); - parameters.setPersistenceUnit("ToscaConceptTest"); - - databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters); - - createPolicyTypes(); - } - - /** - * Set up standard coder. - */ - @Before - public void setupStandardCoder() { - standardCoder = new StandardCoder(); - } - - @After - public void teardown() throws Exception { - databaseProvider.close(); - } - - @Test - public void testLegacyOperationalPolicyPersistence() throws Exception { - for (int i = 0; i < policyInputResourceNames.length; i++) { - String policyInputString = ResourceUtils.getResourceAsString(policyInputResourceNames[i]); - String policyOutputString = ResourceUtils.getResourceAsString(policyOutputResourceNames[i]); - testJsonStringPolicyPersistence(policyInputString, policyOutputString); - } - } - - /** - * Check persistence of a policy. - * - * @param policyInputString the policy as a string - * @param policyOutputString the expected output string - * @throws Exception any exception thrown - */ - public void testJsonStringPolicyPersistence(@NonNull final String policyInputString, - final String policyOutputString) throws Exception { - LegacyOperationalPolicy lop = standardCoder.decode(policyInputString, LegacyOperationalPolicy.class); - - assertNotNull(lop); - - LegacyOperationalPolicy createdLop = databaseProvider.createOperationalPolicy(lop); - assertEquals(createdLop, lop); - - LegacyOperationalPolicy gotLop = databaseProvider.getOperationalPolicy(lop.getPolicyId(), null); - assertEquals(gotLop, lop); - - LegacyOperationalPolicy updatedLop = databaseProvider.updateOperationalPolicy(lop); - assertEquals(gotLop, updatedLop); - - LegacyOperationalPolicy deletedLop = databaseProvider.deleteOperationalPolicy(lop.getPolicyId(), "1"); - assertEquals(gotLop, deletedLop); - - String actualRetrievedJson = standardCoder.encode(gotLop); - - // All of this dash/underscore stuff is to avoid a checkstyle error around escaping unicode characters - assertEquals( - policyOutputString.replaceAll("\\s+", "").replaceAll("u0027", "_-_-_-_").replaceAll("\\\\_-_-_-_", "'"), - actualRetrievedJson.replaceAll("\\s+", "").replaceAll("u0027", "_-_-_-_").replaceAll("\\\\_-_-_-_", - "'")); - } - - private void createPolicyTypes() throws CoderException, PfModelException, URISyntaxException { - Set<String> policyTypeResources = ResourceUtils.getDirectoryContents("policytypes"); - - for (String policyTypeResource : policyTypeResources) { - Object yamlObject = new Yaml().load(ResourceUtils.getResourceAsString(policyTypeResource)); - String yamlAsJsonString = new StandardCoder().encode(yamlObject); - - ToscaServiceTemplate toscaServiceTemplatePolicyType = - standardCoder.decode(yamlAsJsonString, ToscaServiceTemplate.class); - - assertNotNull(toscaServiceTemplatePolicyType); - databaseProvider.createPolicyTypes(toscaServiceTemplatePolicyType); - } - } -} |