aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDinh Danh Le <dinh.danh.le@ericsson.com>2018-07-15 02:52:33 +0100
committerDinh Danh Le <dinh.danh.le@ericsson.com>2018-07-16 14:07:50 +0100
commit2df5543498c0fa0a2ba120eec744aa4cde929199 (patch)
tree2db4f026911e3a60d06ab468c2c041e1d7ff4672
parent08b595c863b45e759e57ef419c83dad2b209df9c (diff)
Refactor persistence JPA testing
Adding tests for EclipseLink and refactoring Hibernate testcases. As both tests use the same test entities, the two existing test entity classes from org.onap.policy.apex.plugins.persistence.jpa.hibernate are moved to a newly created package org.onap.policy.apex.context.test.entities under context-test-utils. Relevent POM files are changed w.r.t this change. In particular, 1) add version infos as properties in apex-pdp/pom.xml 2) common dependencies related to Junit testing for EclipseLink and Hibernate are moved to their parent plugins-persistence-jpa's POM. Change-Id: I9d9387154cbfdfc69be49960b80e040b6fd35b5a Signed-off-by: Dinh Danh Le <dinh.danh.le@ericsson.com> Issue-ID: POLICY-862
-rw-r--r--context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/ArtifactKeyTestEntity.java (renamed from plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/ArtifactKeyTestEntity.java)4
-rw-r--r--context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/ReferenceKeyTestEntity.java (renamed from plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/ReferenceKeyTestEntity.java)4
-rw-r--r--context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/package-info.java26
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml1
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java251
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml40
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/pom.xml18
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/HibernateApexDaoTest.java8
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/resources/META-INF/persistence.xml11
-rw-r--r--plugins/plugins-persistence/plugins-persistence-jpa/pom.xml15
-rw-r--r--pom.xml2
11 files changed, 350 insertions, 30 deletions
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/ArtifactKeyTestEntity.java b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/ArtifactKeyTestEntity.java
index 1da724a87..e801ae786 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/ArtifactKeyTestEntity.java
+++ b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/ArtifactKeyTestEntity.java
@@ -18,7 +18,7 @@
* ============LICENSE_END=========================================================
*/
-package org.onap.policy.apex.plugins.persistence.jpa.hibernate;
+package org.onap.policy.apex.context.test.entities;
import java.util.Arrays;
import java.util.List;
@@ -36,7 +36,7 @@ import org.onap.policy.apex.model.basicmodel.concepts.AxValidationResult;
@Entity
@Table(name = "ArtifactKeyTestEntity")
public class ArtifactKeyTestEntity extends AxConcept {
- private static final long serialVersionUID = -2962570563281067895L;
+ private static final long serialVersionUID = -2962570563281067896L;
@EmbeddedId()
@XmlElement(name = "key", required = true)
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/ReferenceKeyTestEntity.java b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/ReferenceKeyTestEntity.java
index 991b4e2d7..14c3628e5 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/ReferenceKeyTestEntity.java
+++ b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/ReferenceKeyTestEntity.java
@@ -18,7 +18,7 @@
* ============LICENSE_END=========================================================
*/
-package org.onap.policy.apex.plugins.persistence.jpa.hibernate;
+package org.onap.policy.apex.context.test.entities;
import java.util.Arrays;
import java.util.List;
@@ -38,7 +38,7 @@ import org.onap.policy.apex.model.basicmodel.xml.AxReferenceKeyAdapter;
@Entity
@Table(name = "ReferenceKeyTestEntity")
public class ReferenceKeyTestEntity extends AxConcept {
- private static final long serialVersionUID = -2962570563281067894L;
+ private static final long serialVersionUID = -2962570563281067895L;
@EmbeddedId()
@XmlElement(name = "key", required = true)
diff --git a/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/package-info.java b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/package-info.java
new file mode 100644
index 000000000..8a4ea4cee
--- /dev/null
+++ b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/entities/package-info.java
@@ -0,0 +1,26 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2018 Ericsson. 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.
+ * 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=========================================================
+ */
+
+/**
+ * Contains common test entities
+ * @author Dinh Danh Le (dinh.danh.le@ericsson.com)
+ *
+ */
+package org.onap.policy.apex.context.test.entities;
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml
index c40f0abaa..649e9ed69 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/pom.xml
@@ -25,7 +25,6 @@
<artifactId>plugins-persistence-jpa</artifactId>
<version>2.0.0-SNAPSHOT</version>
</parent>
-
<artifactId>plugins-persistence-jpa-eclipselink</artifactId>
<name>${project.artifactId}</name>
<description>[${project.parent.artifactId}] Plugin for persistence using EclipseLink</description>
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java
new file mode 100644
index 000000000..d33621e47
--- /dev/null
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/eclipselink/EclipselinkApexDaoTest.java
@@ -0,0 +1,251 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2018 Ericsson. 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.
+ * 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.apex.plugins.persistence.jpa.eclipselink;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.onap.policy.apex.context.test.entities.ArtifactKeyTestEntity;
+import org.onap.policy.apex.context.test.entities.ReferenceKeyTestEntity;
+import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
+import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
+import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
+import org.onap.policy.apex.model.basicmodel.dao.DAOParameters;
+
+/**
+ * Junit tests for class EclipselinkApexDao
+ *
+ * @author Dinh Danh Le (dinh.danh.le@ericsson.com)
+ *
+ */
+
+public class EclipselinkApexDaoTest {
+
+ private static final List<AxArtifactKey> TEST_ARTIKEYS = Arrays.asList(new AxArtifactKey[] {
+ new AxArtifactKey("ABC", "0.0.1"), new AxArtifactKey("DEF", "0.1.1"), new AxArtifactKey("XYZ", "1.1.1")});
+
+ private final DAOParameters daoParameters = new DAOParameters();
+
+ private EclipselinkApexDao eclipselinkApexDao = null;
+
+ @Before
+ public void setup() throws ApexException {
+ daoParameters.setPluginClass(EclipselinkApexDao.class.getCanonicalName());
+ daoParameters.setPersistenceUnit("DAOTest");
+ eclipselinkApexDao = new EclipselinkApexDao();
+ eclipselinkApexDao.init(daoParameters);
+ }
+
+ @After
+ public void teardown() {
+ eclipselinkApexDao.close();
+ }
+
+ @Test
+ public void test_NullArguments() {
+ final AxArtifactKey nullArtifactKey = null;
+ final AxArtifactKey nullRefernceKey = null;
+ final List<Object> emptyList = Collections.emptyList();
+
+ assertNull(eclipselinkApexDao.getArtifact(null, nullArtifactKey));
+ assertNull(eclipselinkApexDao.getArtifact(ArtifactKeyTestEntity.class, nullArtifactKey));
+
+ assertNull(eclipselinkApexDao.getArtifact(null, nullRefernceKey));
+ assertNull(eclipselinkApexDao.getArtifact(ReferenceKeyTestEntity.class, nullRefernceKey));
+
+ assertNotNull(eclipselinkApexDao.getAll(null));
+ assertTrue(eclipselinkApexDao.getAll(null).equals(emptyList));
+ assertNotNull(eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class));
+ }
+
+ @Test
+ public void test_createObject() throws ApexException {
+ // create 3 more entities from testArtiKeys
+ for (final AxArtifactKey akey : TEST_ARTIKEYS) {
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(new AxReferenceKey(akey), Math.random()));
+ }
+ assertEquals(3, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size());
+ }
+
+ @Test
+ public void test_getAll() {
+ // create a list of three entities from testArtiKeys
+ final double[] genDoubleVals = new double[TEST_ARTIKEYS.size()];
+
+ for (int i = 0; i < TEST_ARTIKEYS.size(); i++) {
+ final AxArtifactKey akey = TEST_ARTIKEYS.get(i);
+ genDoubleVals[i] = Math.random();
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(new AxReferenceKey(akey), genDoubleVals[i]));
+ }
+
+ final List<ReferenceKeyTestEntity> ret = eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class);
+ assertEquals(TEST_ARTIKEYS.size(), ret.size());
+
+ for (int i = 0; i < TEST_ARTIKEYS.size(); i++) {
+ final ReferenceKeyTestEntity e = ret.get(i);
+ assertEquals(TEST_ARTIKEYS.get(i), e.getKey().getParentArtifactKey());
+ assertEquals(genDoubleVals[i], e.getDoubleValue(), 0.0);
+ }
+ }
+
+
+ @Test
+ public void test_getArtifactByReferenceKey() {
+ final AxArtifactKey artifactKey = new AxArtifactKey("XXX", "0.0.1");
+ final AxReferenceKey referenceKey = new AxReferenceKey(artifactKey, "Entity1");
+
+ // assert null if Entity Class is null
+ assertNull(eclipselinkApexDao.getArtifact(null, referenceKey));
+
+ // create PersistenceContext with an entity
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(referenceKey, 1.0));
+ // assert null when trying to find an entity with an unknown key
+ final AxArtifactKey anotherArtifactKey = new AxArtifactKey("YYY", "0.0.2");
+ final AxReferenceKey anotherReferenceKey = new AxReferenceKey(anotherArtifactKey);
+
+ assertNull(eclipselinkApexDao.getArtifact(ReferenceKeyTestEntity.class, anotherReferenceKey));
+
+ // assert return only one entity when finding an entity with correct key
+ final ReferenceKeyTestEntity retEntity =
+ eclipselinkApexDao.getArtifact(ReferenceKeyTestEntity.class, referenceKey);
+ assertEquals(referenceKey, retEntity.getKey());
+ }
+
+
+ @Test
+ public void test_getArtifactByArtifactKey() {
+ final AxArtifactKey artifactKey = new AxArtifactKey("XXX", "0.0.1");
+ // assert null if either Entity Class is null
+ assertNull(eclipselinkApexDao.getArtifact(null, artifactKey));
+ // create an entity
+ eclipselinkApexDao.create(new ArtifactKeyTestEntity(artifactKey, 1.0));
+
+ // assert null when trying to find an entity with an unknown key
+ final AxArtifactKey otherArtifactKey = new AxArtifactKey("YYY", "0.0.2");
+ assertNull(eclipselinkApexDao.getArtifact(ArtifactKeyTestEntity.class, otherArtifactKey));
+
+ // assert return only one entity when finding an entity with correct key
+ final ArtifactKeyTestEntity retEntity = eclipselinkApexDao.getArtifact(ArtifactKeyTestEntity.class, artifactKey);
+ assertNotNull(retEntity);
+ assertEquals(artifactKey, retEntity.getKey());
+ }
+
+
+ @Test
+ public void test_deleteByArtifactKey() {
+ // initialize a list of (3) entities corresponding to the list of testArtiKeys
+ for (final AxArtifactKey akey : TEST_ARTIKEYS) {
+ eclipselinkApexDao.create(new ArtifactKeyTestEntity(akey, Math.random()));
+ }
+ // create one more entity
+ final ArtifactKeyTestEntity entity = new ArtifactKeyTestEntity(new AxArtifactKey("XYZ", "100.0.0"), 100.0);
+ eclipselinkApexDao.create(entity);
+
+ assertEquals(3, eclipselinkApexDao.deleteByArtifactKey(ArtifactKeyTestEntity.class, TEST_ARTIKEYS));
+
+ // after deleteByArtifactKey()--> getAll().size() == 1
+ final List<ArtifactKeyTestEntity> remainingEntities = eclipselinkApexDao.getAll(ArtifactKeyTestEntity.class);
+ assertEquals(1, remainingEntities.size());
+ // more details about the remainingEntities
+ assertEquals(100.0, remainingEntities.get(0).getDoubleValue(), 0.0);
+ }
+
+
+ @Test
+ public void test_deleteByReferenceKey() {
+ // prepare 2 AxArtifactKeys
+ final AxArtifactKey owner0Key = new AxArtifactKey("Owner0", "0.0.1");
+ final AxArtifactKey owner1Key = new AxArtifactKey("Owner1", "0.0.1");
+
+ // prepare a list of (3) AxReferenceKeys corresponding to owner0Key
+ final List<AxReferenceKey> refKey0s =
+ Arrays.asList(new AxReferenceKey[] {new AxReferenceKey(owner0Key, "Entity01"),
+ new AxReferenceKey(owner0Key, "Entity02"), new AxReferenceKey(owner0Key, "Entity03")});
+ // prepare 2 more AxReferenceKeys corresponding to owner1Key
+ final AxReferenceKey refKey11 = new AxReferenceKey(owner1Key, "Entity11");
+ final AxReferenceKey refKey12 = new AxReferenceKey(owner1Key, "Entity12");
+
+ // create a list of 5 entities
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0s.get(0), 101.0));
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0s.get(1), 102.0));
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0s.get(2), 103.0));
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey11, 104.0));
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey12, 105.0));
+
+ // assert 3 entities are deleted by this deletion
+ assertEquals(3, eclipselinkApexDao.deleteByReferenceKey(ReferenceKeyTestEntity.class, refKey0s));
+ // after deletion, make sure getAll().size() == 2
+ assertEquals(2, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size());
+ }
+
+ @Test
+ public void test_deleteAll() {
+ // initialize a list of (3) entities and add to the PersistenceContext
+ for (final AxArtifactKey akey : TEST_ARTIKEYS) {
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(new AxReferenceKey(akey), Math.random()));
+ }
+ // before deleteAll()--> getAll().size() == 3
+ assertEquals(3, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size());
+ eclipselinkApexDao.deleteAll(ReferenceKeyTestEntity.class);
+ // after deleteAll()--> getAll().size() == 0
+ assertEquals(0, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class).size());
+ }
+
+
+ @Test
+ public void test_getAllByArtifactKey() {
+
+ final AxArtifactKey artiKey0 = new AxArtifactKey("XYZA", "0.1.2");
+ final AxArtifactKey artiKey1 = new AxArtifactKey("ONAP", "0.0.1");
+
+ final AxReferenceKey refKey0 = new AxReferenceKey(artiKey0, "Entity0");
+ final AxReferenceKey refKey1 = new AxReferenceKey(artiKey1, "Entity1");
+
+
+ // test with null class with known key --> return an empty list
+ assertNotNull(eclipselinkApexDao.getAll(null, artiKey1));
+ assertTrue(eclipselinkApexDao.getAll(null, artiKey1).equals(Collections.emptyList()));
+
+ // test with (not_null) ArtifactKeyTestEntity class
+ assertEquals(0, eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class, artiKey0).size());
+ // create 2 entities
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0, 100.0));
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey0, 200.0));
+ eclipselinkApexDao.create(new ReferenceKeyTestEntity(refKey1, 100.0));
+
+ final List<ReferenceKeyTestEntity> ret = eclipselinkApexDao.getAll(ReferenceKeyTestEntity.class, artiKey0);
+ assertEquals(1, ret.size());
+ final ReferenceKeyTestEntity retEntity = ret.get(0);
+ assertEquals(200.0, retEntity.getDoubleValue(), 0);
+ }
+
+
+
+}
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml
new file mode 100644
index 000000000..130079dd9
--- /dev/null
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-eclipselink/src/test/resources/META-INF/persistence.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ============LICENSE_START=======================================================
+ Copyright (C) 2018 Ericsson. 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.
+ 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=========================================================
+-->
+<!-- This is to configure H2-IMDB using EclipseLink JPA-->
+
+<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
+ <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL">
+ <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
+
+ <class>org.onap.policy.apex.context.test.entities.ReferenceKeyTestEntity</class>
+ <class>org.onap.policy.apex.context.test.entities.ArtifactKeyTestEntity</class>
+
+ <properties>
+ <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" />
+ <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:test" />
+ <property name="javax.persistence.jdbc.user" value="sa" />
+ <property name="javax.persistence.jdbc.password" value="" />
+ <property name="eclipselink.ddl-generation" value="drop-and-create-tables" />
+ <property name="eclipselink.ddl-generation.output-mode" value="database" />
+ <property name="eclipselink.logging.level" value="INFO" />
+ </properties>
+ </persistence-unit>
+</persistence> \ No newline at end of file
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/pom.xml b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/pom.xml
index f20a06c1f..c219b733c 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/pom.xml
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/pom.xml
@@ -30,15 +30,11 @@
<name>${project.artifactId}</name>
<description>[${project.parent.artifactId}] Plugin for persistence using Hibernate</description>
- <properties>
- <hibernate.version>5.3.1.Final</hibernate.version>
- </properties>
-
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
- <version>${hibernate.version}</version>
+ <version>${version.hibernate}</version>
<exclusions>
<exclusion>
<groupId>dom4j</groupId>
@@ -49,17 +45,7 @@
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-c3p0</artifactId>
- <version>${hibernate.version}</version>
- </dependency>
- <dependency>
- <groupId>com.h2database</groupId>
- <artifactId>h2</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>dom4j</groupId>
- <artifactId>dom4j</artifactId>
- <version>1.6</version>
+ <version>${version.hibernate}</version>
</dependency>
</dependencies>
</project> \ No newline at end of file
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/HibernateApexDaoTest.java b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/HibernateApexDaoTest.java
index 894b7bac1..851332b7b 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/HibernateApexDaoTest.java
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/java/org/onap/policy/apex/plugins/persistence/jpa/hibernate/HibernateApexDaoTest.java
@@ -1,6 +1,6 @@
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ * Copyright (C) 2018 Ericsson. 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.
@@ -32,13 +32,15 @@ import java.util.List;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.onap.policy.apex.context.test.entities.ArtifactKeyTestEntity;
+import org.onap.policy.apex.context.test.entities.ReferenceKeyTestEntity;
import org.onap.policy.apex.model.basicmodel.concepts.ApexException;
import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey;
import org.onap.policy.apex.model.basicmodel.concepts.AxReferenceKey;
import org.onap.policy.apex.model.basicmodel.dao.DAOParameters;
/**
- * unit test for class HibernateApexDao
+ * Junit test for class HibernateApexDao
*
* @author Dinh Danh Le (dinh.danh.le@ericsson.com)
*
@@ -56,7 +58,7 @@ public class HibernateApexDaoTest {
@Before
public void setupDAO() throws ApexException {
daoParameters.setPluginClass(HibernateApexDao.class.getCanonicalName());
- daoParameters.setPersistenceUnit("HiDAOtest");
+ daoParameters.setPersistenceUnit("DAOTest");
hibernateApexDao = new HibernateApexDao();
hibernateApexDao.init(daoParameters);
}
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/resources/META-INF/persistence.xml b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/resources/META-INF/persistence.xml
index a40e0d9fe..ee38e0096 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/resources/META-INF/persistence.xml
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/plugins-persistence-jpa-hibernate/src/test/resources/META-INF/persistence.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
============LICENSE_START=======================================================
- Copyright (C) 2016-2018 Ericsson. All rights reserved.
+ Copyright (C) 2018 Ericsson. 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.
@@ -21,23 +21,22 @@
<!-- This is to configure H2-IMDB using Hibernate-->
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
- <persistence-unit name="HiDAOtest" transaction-type="RESOURCE_LOCAL">
+ <persistence-unit name="DAOTest" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
- <class>org.onap.policy.apex.plugins.persistence.jpa.hibernate.ReferenceKeyTestEntity</class>
- <class>org.onap.policy.apex.plugins.persistence.jpa.hibernate.ArtifactKeyTestEntity</class>
+ <class>org.onap.policy.apex.context.test.entities.ReferenceKeyTestEntity</class>
+ <class>org.onap.policy.apex.context.test.entities.ArtifactKeyTestEntity</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect" />
<property name="hibernate.connection.driver_class" value="org.h2.Driver" />
<property name="hibernate.connection.url" value="jdbc:h2:mem:test" />
<property name="hibernate.connection.user" value="sa" />
- <property name="javax.persistence.jdbc.password" value="" />
+ <property name="hibernate.connection.user.password" value="" />
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.flushMode" value="FLUSH_AUTO" />
<property name="hibernate.temp.use_jdbc_metadata_defaults" value="false" />
<property name="hibernate.hbm2ddl.auto" value="create-drop" />
</properties>
</persistence-unit>
-
</persistence> \ No newline at end of file
diff --git a/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml b/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml
index 9a262fc55..ddf80b5c6 100644
--- a/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml
+++ b/plugins/plugins-persistence/plugins-persistence-jpa/pom.xml
@@ -39,6 +39,21 @@
<artifactId>basic-model</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.onap.policy.apex-pdp.context</groupId>
+ <artifactId>context-test-utils</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>dom4j</groupId>
+ <artifactId>dom4j</artifactId>
+ <version>${version.dom4j}</version>
+ </dependency>
</dependencies>
<modules>
diff --git a/pom.xml b/pom.xml
index 2b545b6c3..1bd57b83f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -44,6 +44,8 @@
<version.kafka>0.10.2.1</version.kafka>
<version.jersey>2.26</version.jersey>
<version.eclipselink>2.6.5</version.eclipselink>
+ <version.hibernate>5.3.1.Final</version.hibernate>
+ <version.dom4j>1.6</version.dom4j>
</properties>
<distributionManagement>