diff options
Diffstat (limited to 'models-provider')
9 files changed, 401 insertions, 367 deletions
diff --git a/models-provider/pom.xml b/models-provider/pom.xml index b6021b003..cbe19389d 100644 --- a/models-provider/pom.xml +++ b/models-provider/pom.xml @@ -79,5 +79,12 @@ <artifactId>mockito-all</artifactId> <scope>test</scope> </dependency> + + <dependency> + <groupId>org.assertj</groupId> + <artifactId>assertj-core</artifactId> + <scope>test</scope> + </dependency> + </dependencies> </project> diff --git a/models-provider/src/main/java/org/onap/policy/models/provider/PolicyModelsProvider.java b/models-provider/src/main/java/org/onap/policy/models/provider/PolicyModelsProvider.java index 9bc49837e..103d761df 100644 --- a/models-provider/src/main/java/org/onap/policy/models/provider/PolicyModelsProvider.java +++ b/models-provider/src/main/java/org/onap/policy/models/provider/PolicyModelsProvider.java @@ -20,18 +20,21 @@ package org.onap.policy.models.provider; +import java.util.Map; + import lombok.NonNull; import org.onap.policy.models.base.PfConceptKey; import org.onap.policy.models.base.PfModelException; -import org.onap.policy.models.pap.concepts.PdpGroups; -import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicy; +import org.onap.policy.models.pdp.concepts.PdpGroups; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyInput; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyOutput; import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; import org.onap.policy.models.tosca.simple.concepts.ToscaServiceTemplate; /** - * This interface describes the operations that are provided to users and components for reading - * objects from and writing objects to the database. + * This interface describes the operations that are provided to users and components for reading objects from and + * writing objects to the database. * * @author Liam Fallon (liam.fallon@est.tech) */ @@ -46,9 +49,8 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Get policy types. * - * @param policyTypeKey the policy type key for the policy types to be retrieved. A null key - * name returns all policy types. A null key version returns all versions of the policy - * type name specified in the key. + * @param policyTypeKey the policy type key for the policy types to be retrieved. A null key name returns all policy + * types. A null key version returns all versions of the policy type name specified in the key. * @return the policy types found * @throws PfModelException on errors getting policy types */ @@ -57,8 +59,7 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Create policy types. * - * @param serviceTemplate the service template containing the definition of the policy types to - * be created + * @param serviceTemplate the service template containing the definition of the policy types to be created * @return the TOSCA service template containing the created policy types * @throws PfModelException on errors creating policy types */ @@ -68,8 +69,7 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Create policy types. * - * @param serviceTemplate the service template containing the definition of the policy types to - * be modified + * @param serviceTemplate the service template containing the definition of the policy types to be modified * @return the TOSCA service template containing the modified policy types * @throws PfModelException on errors updating policy types */ @@ -79,8 +79,8 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Delete policy types. * - * @param policyTypeKey the policy type key for the policy types to be deleted, if the version - * of the key is null, all versions of the policy type are deleted. + * @param policyTypeKey the policy type key for the policy types to be deleted, if the version of the key is null, + * all versions of the policy type are deleted. * @return the TOSCA service template containing the policy types that were deleted * @throws PfModelException on errors deleting policy types */ @@ -89,8 +89,8 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Get policies. * - * @param policyKey the policy key for the policies to be retrieved. The parent name and version - * must be specified. A null local name returns all policies for a parent policy type. + * @param policyKey the policy key for the policies to be retrieved. The parent name and version must be specified. + * A null local name returns all policies for a parent policy type. * @return the policies found * @throws PfModelException on errors getting policies */ @@ -99,8 +99,7 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Create policies. * - * @param serviceTemplate the service template containing the definitions of the new policies to - * be created. + * @param serviceTemplate the service template containing the definitions of the new policies to be created. * @return the TOSCA service template containing the policy types that were created * @throws PfModelException on errors creating policies */ @@ -111,8 +110,7 @@ public interface PolicyModelsProvider extends AutoCloseable { /** * Update policies. * - * @param serviceTemplate the service template containing the definitions of the policies to be - * updated. + * @param serviceTemplate the service template containing the definitions of the policies to be updated. * @return the TOSCA service template containing the policies that were updated * @throws PfModelException on errors updating policies */ @@ -173,7 +171,7 @@ public interface PolicyModelsProvider extends AutoCloseable { * @return the policies found * @throws PfModelException on errors getting policies */ - public LegacyGuardPolicy getGuardPolicy(@NonNull final String policyId) throws PfModelException; + public Map<String, LegacyGuardPolicyOutput> getGuardPolicy(@NonNull final String policyId) throws PfModelException; /** * Create legacy guard policy. @@ -182,8 +180,8 @@ public interface PolicyModelsProvider extends AutoCloseable { * @return the created policy * @throws PfModelException on errors creating policies */ - public LegacyGuardPolicy createGuardPolicy(@NonNull final LegacyGuardPolicy legacyGuardPolicy) - throws PfModelException; + public Map<String, LegacyGuardPolicyOutput> createGuardPolicy( + @NonNull final LegacyGuardPolicyInput legacyGuardPolicy) throws PfModelException; /** * Update legacy guard policy. @@ -192,8 +190,8 @@ public interface PolicyModelsProvider extends AutoCloseable { * @return the updated policy * @throws PfModelException on errors updating policies */ - public LegacyGuardPolicy updateGuardPolicy(@NonNull final LegacyGuardPolicy legacyGuardPolicy) - throws PfModelException; + public Map<String, LegacyGuardPolicyOutput> updateGuardPolicy( + @NonNull final LegacyGuardPolicyInput legacyGuardPolicy) throws PfModelException; /** * Delete legacy guard policy. @@ -202,7 +200,8 @@ public interface PolicyModelsProvider extends AutoCloseable { * @return the deleted policy * @throws PfModelException on errors deleting policies */ - public LegacyGuardPolicy deleteGuardPolicy(@NonNull final String policyId) throws PfModelException; + public Map<String, LegacyGuardPolicyOutput> deleteGuardPolicy(@NonNull final String policyId) + throws PfModelException; /** * Get PDP groups. diff --git a/models-provider/src/main/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderImpl.java b/models-provider/src/main/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderImpl.java index 43f75d2a9..078126243 100644 --- a/models-provider/src/main/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderImpl.java +++ b/models-provider/src/main/java/org/onap/policy/models/provider/impl/DatabasePolicyModelsProviderImpl.java @@ -23,6 +23,7 @@ package org.onap.policy.models.provider.impl; import java.sql.Connection; import java.sql.DriverManager; import java.util.Base64; +import java.util.Map; import javax.ws.rs.core.Response; @@ -35,11 +36,12 @@ import org.onap.policy.models.dao.DaoParameters; import org.onap.policy.models.dao.PfDao; import org.onap.policy.models.dao.PfDaoFactory; import org.onap.policy.models.dao.impl.DefaultPfDao; -import org.onap.policy.models.pap.concepts.PdpGroups; -import org.onap.policy.models.pap.provider.PapProvider; +import org.onap.policy.models.pdp.concepts.PdpGroups; +import org.onap.policy.models.pdp.provider.PdpProvider; import org.onap.policy.models.provider.PolicyModelsProvider; import org.onap.policy.models.provider.PolicyModelsProviderParameters; -import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicy; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyInput; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyOutput; import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; import org.onap.policy.models.tosca.legacy.provider.LegacyProvider; import org.onap.policy.models.tosca.simple.concepts.ToscaServiceTemplate; @@ -214,27 +216,28 @@ public class DatabasePolicyModelsProviderImpl implements PolicyModelsProvider { } @Override - public LegacyGuardPolicy getGuardPolicy(@NonNull final String policyId) throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> getGuardPolicy(@NonNull final String policyId) throws PfModelException { assertInitilized(); return new LegacyProvider().getGuardPolicy(pfDao, policyId); } @Override - public LegacyGuardPolicy createGuardPolicy(@NonNull final LegacyGuardPolicy legacyGuardPolicy) - throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> createGuardPolicy( + @NonNull final LegacyGuardPolicyInput legacyGuardPolicy) throws PfModelException { assertInitilized(); return new LegacyProvider().createGuardPolicy(pfDao, legacyGuardPolicy); } @Override - public LegacyGuardPolicy updateGuardPolicy(@NonNull final LegacyGuardPolicy legacyGuardPolicy) - throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> updateGuardPolicy( + @NonNull final LegacyGuardPolicyInput legacyGuardPolicy) throws PfModelException { assertInitilized(); return new LegacyProvider().updateGuardPolicy(pfDao, legacyGuardPolicy); } @Override - public LegacyGuardPolicy deleteGuardPolicy(@NonNull final String policyId) throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> deleteGuardPolicy(@NonNull final String policyId) + throws PfModelException { assertInitilized(); return new LegacyProvider().deleteGuardPolicy(pfDao, policyId); } @@ -242,25 +245,25 @@ public class DatabasePolicyModelsProviderImpl implements PolicyModelsProvider { @Override public PdpGroups getPdpGroups(@NonNull String pdpGroupFilter) throws PfModelException { assertInitilized(); - return new PapProvider().getPdpGroups(pfDao, pdpGroupFilter); + return new PdpProvider().getPdpGroups(pfDao, pdpGroupFilter); } @Override public PdpGroups createPdpGroups(@NonNull PdpGroups pdpGroups) throws PfModelException { assertInitilized(); - return new PapProvider().createPdpGroups(pfDao, pdpGroups); + return new PdpProvider().createPdpGroups(pfDao, pdpGroups); } @Override public PdpGroups updatePdpGroups(@NonNull PdpGroups pdpGroups) throws PfModelException { assertInitilized(); - return new PapProvider().updatePdpGroups(pfDao, pdpGroups); + return new PdpProvider().updatePdpGroups(pfDao, pdpGroups); } @Override public PdpGroups deletePdpGroups(@NonNull String pdpGroupFilter) throws PfModelException { assertInitilized(); - return new PapProvider().deletePdpGroups(pfDao, pdpGroupFilter); + return new PdpProvider().deletePdpGroups(pfDao, pdpGroupFilter); } /** diff --git a/models-provider/src/main/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderImpl.java b/models-provider/src/main/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderImpl.java index 8d833a53d..36fb01c27 100644 --- a/models-provider/src/main/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderImpl.java +++ b/models-provider/src/main/java/org/onap/policy/models/provider/impl/DummyPolicyModelsProviderImpl.java @@ -23,16 +23,20 @@ package org.onap.policy.models.provider.impl; import com.google.gson.Gson; +import java.util.HashMap; +import java.util.Map; + import javax.ws.rs.core.Response; import lombok.NonNull; import org.onap.policy.common.utils.resources.ResourceUtils; import org.onap.policy.models.base.PfConceptKey; import org.onap.policy.models.base.PfModelException; import org.onap.policy.models.base.PfModelRuntimeException; -import org.onap.policy.models.pap.concepts.PdpGroups; +import org.onap.policy.models.pdp.concepts.PdpGroups; import org.onap.policy.models.provider.PolicyModelsProvider; import org.onap.policy.models.provider.PolicyModelsProviderParameters; -import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicy; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyInput; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyOutput; import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; import org.onap.policy.models.tosca.simple.concepts.ToscaServiceTemplate; import org.onap.policy.models.tosca.simple.serialization.ToscaServiceTemplateMessageBodyHandler; @@ -49,8 +53,7 @@ public class DummyPolicyModelsProviderImpl implements PolicyModelsProvider { * * @param parameters the parameters for the provider */ - public DummyPolicyModelsProviderImpl(@NonNull final PolicyModelsProviderParameters parameters) { - } + public DummyPolicyModelsProviderImpl(@NonNull final PolicyModelsProviderParameters parameters) {} @Override public void init() throws PfModelException { @@ -130,25 +133,26 @@ public class DummyPolicyModelsProviderImpl implements PolicyModelsProvider { } @Override - public LegacyGuardPolicy getGuardPolicy(@NonNull final String policyId) throws PfModelException { - return new LegacyGuardPolicy(); + public Map<String, LegacyGuardPolicyOutput> getGuardPolicy(@NonNull final String policyId) throws PfModelException { + return new HashMap<>(); } @Override - public LegacyGuardPolicy createGuardPolicy(@NonNull final LegacyGuardPolicy legacyGuardPolicy) - throws PfModelException { - return legacyGuardPolicy; + public Map<String, LegacyGuardPolicyOutput> createGuardPolicy( + @NonNull final LegacyGuardPolicyInput legacyGuardPolicy) throws PfModelException { + return new HashMap<>(); } @Override - public LegacyGuardPolicy updateGuardPolicy(@NonNull final LegacyGuardPolicy legacyGuardPolicy) - throws PfModelException { - return legacyGuardPolicy; + public Map<String, LegacyGuardPolicyOutput> updateGuardPolicy( + @NonNull final LegacyGuardPolicyInput legacyGuardPolicy) throws PfModelException { + return new HashMap<>(); } @Override - public LegacyGuardPolicy deleteGuardPolicy(@NonNull final String policyId) throws PfModelException { - return new LegacyGuardPolicy(); + public Map<String, LegacyGuardPolicyOutput> deleteGuardPolicy(@NonNull final String policyId) + throws PfModelException { + return new HashMap<>(); } @Override 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 e4ecb9d1d..1631d9bb1 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 @@ -20,9 +20,8 @@ package org.onap.policy.models.provider.impl; -import static org.junit.Assert.assertEquals; +import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; import static org.junit.Assert.fail; import java.util.Base64; @@ -30,11 +29,11 @@ import java.util.Base64; import org.junit.Before; import org.junit.Test; import org.onap.policy.models.base.PfConceptKey; -import org.onap.policy.models.pap.concepts.PdpGroups; +import org.onap.policy.models.pdp.concepts.PdpGroups; 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.legacy.concepts.LegacyGuardPolicy; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyInput; import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; import org.onap.policy.models.tosca.simple.concepts.ToscaServiceTemplate; import org.slf4j.Logger; @@ -69,12 +68,11 @@ public class DatabasePolicyModelsProviderTest { new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters); parameters.setDatabaseUrl("jdbc://www.acmecorp.nonexist"); - try { + + assertThatThrownBy(() -> { databaseProvider.init(); - fail("test should throw an exception"); - } catch (Exception pfme) { - assertEquals("could not connect to database with URL \"jdbc://www.acmecorp.nonexist\"", pfme.getMessage()); - } + }).hasMessage("could not connect to database with URL \"jdbc://www.acmecorp.nonexist\""); + parameters.setDatabaseUrl("jdbc:h2:mem:testdb"); try { @@ -85,13 +83,13 @@ public class DatabasePolicyModelsProviderTest { } parameters.setPersistenceUnit("WileECoyote"); - try { + + String errorMessage = "could not create Data Access Object (DAO) using url " + + "\"jdbc:h2:mem:testdb\" and persistence unit \"WileECoyote\""; + assertThatThrownBy(() -> { databaseProvider.init(); - fail("test should throw an exception"); - } catch (Exception pfme) { - assertEquals("could not create Data Access Object (DAO) using url " - + "\"jdbc:h2:mem:testdb\" and persistence unit \"WileECoyote\"", pfme.getMessage()); - } + }).hasMessage(errorMessage); + parameters.setPersistenceUnit("ToscaConceptTest"); try { @@ -107,15 +105,12 @@ public class DatabasePolicyModelsProviderTest { fail("test shold not throw an exception here"); } - try { + assertThatThrownBy(() -> { DatabasePolicyModelsProviderImpl databaseProviderImpl = (DatabasePolicyModelsProviderImpl) databaseProvider; databaseProvider.init(); databaseProviderImpl.setConnection(new DummyConnection()); databaseProvider.close(); - fail("test should throw an exception"); - } catch (Exception pfme) { - assertEquals("could not close connection to database with URL \"jdbc:h2:mem:testdb\"", pfme.getMessage()); - } + }).hasMessage("could not close connection to database with URL \"jdbc:h2:mem:testdb\""); } @Test @@ -124,144 +119,99 @@ public class DatabasePolicyModelsProviderTest { new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters); databaseProvider.init(); - try { + assertThatThrownBy(() -> { databaseProvider.getPolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyTypeKey is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyTypeKey is marked @NonNull but is null"); + + + assertThatThrownBy(() -> { databaseProvider.createPolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.updatePolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.deletePolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyTypeKey is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyTypeKey is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { databaseProvider.getPolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyKey is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyKey is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.createPolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.updatePolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.deletePolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyKey is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyKey is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { databaseProvider.getOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyId is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.createOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyOperationalPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyOperationalPolicy is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.updateOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyOperationalPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyOperationalPolicy is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.deleteOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyId is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { databaseProvider.getGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyId is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.createGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyGuardPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyGuardPolicy is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.updateGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyGuardPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyGuardPolicy is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.deleteGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyId is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { databaseProvider.getPdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroupFilter is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("pdpGroupFilter is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.createPdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroups is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("pdpGroups is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.updatePdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroups is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("pdpGroups is marked @NonNull but is null"); + + assertThatThrownBy(() -> { databaseProvider.deletePdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroupFilter is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("pdpGroupFilter is marked @NonNull but is null"); databaseProvider.close(); + } @Test public void testProviderMethodsNotInit() throws Exception { PolicyModelsProvider databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters); - try { + + assertThatThrownBy(() -> { databaseProvider.getPolicyTypes(new PfConceptKey()); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policy models provider is not initilaized", npe.getMessage()); - } + }).hasMessage("policy models provider is not initilaized"); } @Test @@ -270,81 +220,69 @@ public class DatabasePolicyModelsProviderTest { new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters)) { databaseProvider.init(); - try { + assertThatThrownBy(() -> { databaseProvider.getPolicyTypes(new PfConceptKey()); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policy type not found: NULL:0.0.0", npe.getMessage()); - } - try { + }).hasMessage("policy type not found: NULL:0.0.0"); + + assertThatThrownBy(() -> { databaseProvider.createPolicyTypes(new ToscaServiceTemplate()); - } catch (Exception npe) { - assertEquals("no policy types specified on service template", npe.getMessage()); - } - try { + }).hasMessage("no policy types specified on service template"); + + assertThatThrownBy(() -> { databaseProvider.updatePolicyTypes(new ToscaServiceTemplate()); - } catch (Exception npe) { - assertEquals("no policy types specified on service template", npe.getMessage()); - } - try { + }).hasMessage("no policy types specified on service template"); + + assertThatThrownBy(() -> { databaseProvider.deletePolicyTypes(new PfConceptKey()); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policy type not found: NULL:0.0.0", npe.getMessage()); - } + }).hasMessage("policy type not found: NULL:0.0.0"); - try { + assertThatThrownBy(() -> { databaseProvider.getPolicies(new PfConceptKey()); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policy not found: NULL:0.0.0", npe.getMessage()); - } - try { + }).hasMessage("policy not found: NULL:0.0.0"); + + assertThatThrownBy(() -> { databaseProvider.createPolicies(new ToscaServiceTemplate()); - } catch (Exception npe) { - assertEquals("topology template not specified on service template", npe.getMessage()); - } - try { + }).hasMessage("topology template not specified on service template"); + + assertThatThrownBy(() -> { databaseProvider.updatePolicies(new ToscaServiceTemplate()); - } catch (Exception npe) { - assertEquals("topology template not specified on service template", npe.getMessage()); - } - try { + }).hasMessage("topology template not specified on service template"); + + assertThatThrownBy(() -> { databaseProvider.deletePolicies(new PfConceptKey()); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policy not found: NULL:0.0.0", npe.getMessage()); - } - - try { - assertNull(databaseProvider.getOperationalPolicy("policy_id")); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("no policy found for policy ID: policy_id", npe.getMessage()); - } - try { - assertNull(databaseProvider.createOperationalPolicy(new LegacyOperationalPolicy())); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("name is marked @NonNull but is null", npe.getMessage()); - } - try { - assertNull(databaseProvider.updateOperationalPolicy(new LegacyOperationalPolicy())); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("no policy found for policy ID: null", npe.getMessage()); - } - try { - assertNull(databaseProvider.deleteOperationalPolicy("policy_id")); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("no policy found for policy ID: policy_id", npe.getMessage()); - } - - assertNull(databaseProvider.getGuardPolicy("policy_id")); - assertNull(databaseProvider.createGuardPolicy(new LegacyGuardPolicy())); - assertNull(databaseProvider.updateGuardPolicy(new LegacyGuardPolicy())); - assertNull(databaseProvider.deleteGuardPolicy("policy_id")); + }).hasMessage("policy not found: NULL:0.0.0"); + + assertThatThrownBy(() -> { + databaseProvider.getOperationalPolicy("policy_id"); + }).hasMessage("no policy found for policy ID: policy_id"); + + assertThatThrownBy(() -> { + databaseProvider.createOperationalPolicy(new LegacyOperationalPolicy()); + }).hasMessage("name is marked @NonNull but is null"); + + assertThatThrownBy(() -> { + databaseProvider.updateOperationalPolicy(new LegacyOperationalPolicy()); + }).hasMessage("no policy found for policy ID: null"); + + assertThatThrownBy(() -> { + databaseProvider.deleteOperationalPolicy("policy_id"); + }).hasMessage("no policy found for policy ID: policy_id"); + + assertThatThrownBy(() -> { + databaseProvider.getGuardPolicy("policy_id"); + }).hasMessage("no policy found for policy ID: policy_id"); + + assertThatThrownBy(() -> { + databaseProvider.createGuardPolicy(new LegacyGuardPolicyInput()); + }).hasMessage("policy type for guard policy \"null\" unknown"); + + assertThatThrownBy(() -> { + databaseProvider.updateGuardPolicy(new LegacyGuardPolicyInput()); + }).hasMessage("policy type for guard policy \"null\" unknown"); + + assertThatThrownBy(() -> { + databaseProvider.deleteGuardPolicy("policy_id"); + }).hasMessage("no policy found for policy ID: policy_id"); assertNotNull(databaseProvider.getPdpGroups("filter")); assertNotNull(databaseProvider.createPdpGroups(new PdpGroups())); 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 fb0a2416e..f8602e65c 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 @@ -20,6 +20,8 @@ package org.onap.policy.models.provider.impl; +import java.util.Map; + import javax.ws.rs.core.Response; import lombok.NonNull; @@ -27,9 +29,10 @@ import lombok.NonNull; import org.onap.policy.models.base.PfConceptKey; import org.onap.policy.models.base.PfModelException; import org.onap.policy.models.base.PfModelRuntimeException; -import org.onap.policy.models.pap.concepts.PdpGroups; +import org.onap.policy.models.pdp.concepts.PdpGroups; import org.onap.policy.models.provider.PolicyModelsProvider; -import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicy; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyInput; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyOutput; import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; import org.onap.policy.models.tosca.simple.concepts.ToscaServiceTemplate; @@ -47,8 +50,7 @@ public class DummyBadProviderImpl implements PolicyModelsProvider { public void close() throws Exception {} @Override - public void init() throws PfModelException { - } + public void init() throws PfModelException {} @Override public ToscaServiceTemplate getPolicyTypes(@NonNull PfConceptKey policyTypeKey) throws PfModelException { @@ -115,22 +117,24 @@ public class DummyBadProviderImpl implements PolicyModelsProvider { } @Override - public LegacyGuardPolicy getGuardPolicy(@NonNull String policyId) throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> getGuardPolicy(@NonNull String policyId) throws PfModelException { return null; } @Override - public LegacyGuardPolicy createGuardPolicy(@NonNull LegacyGuardPolicy legacyGuardPolicy) throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> createGuardPolicy(@NonNull LegacyGuardPolicyInput legacyGuardPolicy) + throws PfModelException { return null; } @Override - public LegacyGuardPolicy updateGuardPolicy(@NonNull LegacyGuardPolicy legacyGuardPolicy) throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> updateGuardPolicy(@NonNull LegacyGuardPolicyInput legacyGuardPolicy) + throws PfModelException { return null; } @Override - public LegacyGuardPolicy deleteGuardPolicy(@NonNull String policyId) throws PfModelException { + public Map<String, LegacyGuardPolicyOutput> deleteGuardPolicy(@NonNull String policyId) throws PfModelException { return null; } 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 bf3382fdc..de61dc0ab 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 @@ -20,17 +20,18 @@ package org.onap.policy.models.provider.impl; +import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.fail; import org.junit.Test; import org.onap.policy.models.base.PfConceptKey; -import org.onap.policy.models.pap.concepts.PdpGroups; +import org.onap.policy.models.pdp.concepts.PdpGroups; 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.legacy.concepts.LegacyGuardPolicy; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyInput; import org.onap.policy.models.tosca.legacy.concepts.LegacyOperationalPolicy; import org.onap.policy.models.tosca.simple.concepts.ToscaServiceTemplate; @@ -86,8 +87,8 @@ public class DummyPolicyModelsProviderTest { assertNotNull(dummyProvider.deleteOperationalPolicy("policy_id")); assertNotNull(dummyProvider.getGuardPolicy("policy_id")); - assertNotNull(dummyProvider.createGuardPolicy(new LegacyGuardPolicy())); - assertNotNull(dummyProvider.updateGuardPolicy(new LegacyGuardPolicy())); + assertNotNull(dummyProvider.createGuardPolicy(new LegacyGuardPolicyInput())); + assertNotNull(dummyProvider.updateGuardPolicy(new LegacyGuardPolicyInput())); assertNotNull(dummyProvider.deleteGuardPolicy("policy_id")); assertNotNull(dummyProvider.getPdpGroups("filter")); @@ -95,134 +96,70 @@ public class DummyPolicyModelsProviderTest { assertNotNull(dummyProvider.updatePdpGroups(new PdpGroups())); assertNotNull(dummyProvider.deletePdpGroups("filter")); - try { + assertThatThrownBy(() -> { dummyProvider.getPolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyTypeKey is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyTypeKey is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.createPolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.updatePolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.deletePolicyTypes(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyTypeKey is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyTypeKey is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { dummyProvider.getPolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyKey is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyKey is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.createPolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.updatePolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("serviceTemplate is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("serviceTemplate is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.deletePolicies(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyKey is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyKey is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { dummyProvider.getOperationalPolicy(null); - - - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyId is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.createOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyOperationalPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyOperationalPolicy is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.updateOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyOperationalPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyOperationalPolicy is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.deleteOperationalPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("policyId is marked @NonNull but is null"); - try { + assertThatThrownBy(() -> { dummyProvider.getGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("policyId is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.createGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyGuardPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyGuardPolicy is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.updateGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("legacyGuardPolicy is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("legacyGuardPolicy is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.deleteGuardPolicy(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("policyId is marked @NonNull but is null", npe.getMessage()); - } - - try { - + }).hasMessage("policyId is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.getPdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroupFilter is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("pdpGroupFilter is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.createPdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroups is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("pdpGroups is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.updatePdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroups is marked @NonNull but is null", npe.getMessage()); - } - try { + }).hasMessage("pdpGroups is marked @NonNull but is null"); + assertThatThrownBy(() -> { dummyProvider.deletePdpGroups(null); - fail("test should throw an exception"); - } catch (Exception npe) { - assertEquals("pdpGroupFilter is marked @NonNull but is null", npe.getMessage()); - } + }).hasMessage("pdpGroupFilter is marked @NonNull but is null"); dummyProvider.close(); } diff --git a/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyLegacyGuardPersistenceTest.java b/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyLegacyGuardPersistenceTest.java new file mode 100644 index 000000000..2cb787d00 --- /dev/null +++ b/models-provider/src/test/java/org/onap/policy/models/provider/impl/PolicyLegacyGuardPersistenceTest.java @@ -0,0 +1,143 @@ +/*- + * ============LICENSE_START======================================================= + * Copyright (C) 2019 Nordix Foundation. + * ================================================================================ + * 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 static org.junit.Assert.fail; + +import java.util.Base64; +import java.util.Map; + +import lombok.NonNull; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; +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.legacy.concepts.LegacyGuardPolicyInput; +import org.onap.policy.models.tosca.legacy.concepts.LegacyGuardPolicyOutput; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Test persistence of monitoring policies to and from the database. + * + * @author Liam Fallon (liam.fallon@est.tech) + */ +public class PolicyLegacyGuardPersistenceTest { + // Logger for this class + private static final Logger LOGGER = LoggerFactory.getLogger(PolicyLegacyGuardPersistenceTest.class); + + private StandardCoder standardCoder; + + private PolicyModelsProvider databaseProvider; + + // @formatter:off + private String[] policyInputResourceNames = { + "policies/vDNS.policy.guard.frequency.input.json", + "policies/vDNS.policy.guard.minmax.input.json" + }; + + private String[] policyOutputResourceNames = { + "policies/vDNS.policy.guard.frequency.output.json", + "policies/vDNS.policy.guard.minmax.output.json" + }; + // @formatter:on + + /** + * Initialize provider. + * + * @throws PfModelException on exceptions in the tests + */ + @Before + public void setupParameters() throws PfModelException { + PolicyModelsProviderParameters parameters = new PolicyModelsProviderParameters(); + parameters.setDatabaseUrl("jdbc:h2:mem:testdb"); + parameters.setDatabaseUser("policy"); + parameters.setDatabasePassword(Base64.getEncoder().encodeToString("P01icY".getBytes())); + parameters.setPersistenceUnit("ToscaConceptTest"); + + databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters); + databaseProvider.init(); + } + + /** + * Set up standard coder. + */ + @Before + public void setupStandardCoder() { + standardCoder = new StandardCoder(); + } + + @After + public void teardown() throws Exception { + databaseProvider.close(); + } + + @Test + public void testPolicyPersistence() { + try { + for (int i = 0; i < policyInputResourceNames.length; i++) { + String policyInputString = ResourceUtils.getResourceAsString(policyInputResourceNames[i]); + String policyOutputString = ResourceUtils.getResourceAsString(policyOutputResourceNames[i]); + testJsonStringPolicyPersistence(policyInputString, policyOutputString); + } + } catch (Exception exc) { + LOGGER.warn("error processing policies", exc); + fail("test should not throw an exception"); + } + } + + /** + * 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 { + LegacyGuardPolicyInput gip = standardCoder.decode(policyInputString, LegacyGuardPolicyInput.class); + + assertNotNull(gip); + + Map<String, LegacyGuardPolicyOutput> createdGopm = databaseProvider.createGuardPolicy(gip); + assertEquals(gip.getPolicyId(), createdGopm.keySet().iterator().next()); + assertEquals(gip.getContent(), + createdGopm.get(gip.getPolicyId()).getProperties().values().iterator().next()); + + Map<String, LegacyGuardPolicyOutput> gotGopm = databaseProvider.getGuardPolicy(gip.getPolicyId()); + assertEquals(gip.getPolicyId(), gotGopm.keySet().iterator().next()); + assertEquals(gip.getContent(), + gotGopm.get(gip.getPolicyId()).getProperties().values().iterator().next()); + + String actualRetrievedJson = standardCoder.encode(gotGopm); + + // All of this dash/underscore stuff is to avoid a checkstyle error around escaping unicode characters + assertEquals(policyOutputString.replaceAll("\\s+", ""), actualRetrievedJson.replaceAll("\\s+", "")); + } +} 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 index 90d00fc58..60d577cb9 100644 --- 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 @@ -24,8 +24,6 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.fail; -import com.google.gson.Gson; - import java.util.Base64; import lombok.NonNull; @@ -33,6 +31,7 @@ import lombok.NonNull; import org.junit.After; import org.junit.Before; import org.junit.Test; +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; @@ -51,7 +50,7 @@ public class PolicyLegacyOperationalPersistenceTest { // Logger for this class private static final Logger LOGGER = LoggerFactory.getLogger(PolicyLegacyOperationalPersistenceTest.class); - private Gson gson; + private StandardCoder standardCoder; private PolicyModelsProvider databaseProvider; @@ -87,11 +86,11 @@ public class PolicyLegacyOperationalPersistenceTest { } /** - * Set up GSON. + * Set up standard coder. */ @Before - public void setupGson() { - gson = new Gson(); + public void setupStandardCoder() { + standardCoder = new StandardCoder(); } @After @@ -122,7 +121,7 @@ public class PolicyLegacyOperationalPersistenceTest { */ public void testJsonStringPolicyPersistence(@NonNull final String policyInputString, final String policyOutputString) throws Exception { - LegacyOperationalPolicy lop = gson.fromJson(policyInputString, LegacyOperationalPolicy.class); + LegacyOperationalPolicy lop = standardCoder.decode(policyInputString, LegacyOperationalPolicy.class); assertNotNull(lop); @@ -132,7 +131,7 @@ public class PolicyLegacyOperationalPersistenceTest { LegacyOperationalPolicy gotLop = databaseProvider.getOperationalPolicy(lop.getPolicyId()); assertEquals(gotLop, lop); - String actualRetrievedJson = gson.toJson(gotLop); + String actualRetrievedJson = standardCoder.encode(gotLop); // All of this dash/underscore stuff is to avoid a checkstyle error around escaping unicode characters assertEquals( |