Close DB in junits
[policy/models.git] / models-provider / src / test / java / org / onap / policy / models / provider / impl / DatabasePolicyModelsProviderTest.java
index 3c85e31..a1102cb 100644 (file)
@@ -32,6 +32,7 @@ import static org.junit.Assert.assertTrue;
 import java.time.Instant;
 import java.util.ArrayList;
 import java.util.List;
+import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
 import org.onap.policy.models.base.PfModelException;
@@ -79,7 +80,9 @@ public class DatabasePolicyModelsProviderTest {
 
     private static final String ORDER = "DESC";
 
-    PolicyModelsProviderParameters parameters;
+    private PolicyModelsProviderParameters parameters;
+
+    private PolicyModelsProvider databaseProvider;
 
     /**
      * Initialize parameters.
@@ -94,14 +97,23 @@ public class DatabasePolicyModelsProviderTest {
         parameters.setPersistenceUnit("ToscaConceptTest");
     }
 
+    /**
+     * Closes the DB.
+     */
+    @After
+    public void tearDown() throws PfModelException {
+        if (databaseProvider != null) {
+            databaseProvider.close();
+        }
+    }
+
     @Test
     public void testInitAndClose() throws Exception {
         assertThatThrownBy(() -> {
             new DatabasePolicyModelsProviderImpl(null);
         }).hasMessageMatching("^parameters is marked .*on.*ull but is null$");
 
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         parameters.setDatabaseUrl("jdbc://www.acmecorp.nonexist");
 
@@ -134,8 +146,7 @@ public class DatabasePolicyModelsProviderTest {
     @Test
     public void testProviderMethodsNull() throws Exception {
 
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         assertThatThrownBy(() -> {
             databaseProvider.getFilteredPolicyTypes(null);
@@ -197,8 +208,7 @@ public class DatabasePolicyModelsProviderTest {
     @Test
     public void testProviderMethodsNullGroup() throws Exception {
 
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         assertThatThrownBy(() -> {
             databaseProvider.getFilteredPdpGroups(null);
@@ -285,8 +295,7 @@ public class DatabasePolicyModelsProviderTest {
 
     @Test
     public void testProviderMethodsNotInit() throws Exception {
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         databaseProvider.close();
 
@@ -297,8 +306,7 @@ public class DatabasePolicyModelsProviderTest {
 
     @Test
     public void testProviderMethods() throws PfModelException {
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         assertThatThrownBy(() -> databaseProvider.getPolicyTypes(NAME, VERSION_100))
                 .hasMessage("service template not found in database");
@@ -378,16 +386,7 @@ public class DatabasePolicyModelsProviderTest {
         pdpSubGroup.setPdpInstances(new ArrayList<>());
         pdpSubGroup.getPdpInstances().add(pdp);
 
-        PdpStatistics pdpStatistics = new PdpStatistics();
-        pdpStatistics.setPdpInstanceId(NAME);
-        pdpStatistics.setTimeStamp(TIMESTAMP);
-        pdpStatistics.setPdpGroupName(GROUP);
-        pdpStatistics.setPdpSubGroupName("type");
-        ArrayList<PdpStatistics> statisticsArrayList = new ArrayList<>();
-        statisticsArrayList.add(pdpStatistics);
-
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         assertEquals(123,
                 databaseProvider.createPdpGroups(groupList).get(0).getPdpSubgroups().get(0).getDesiredInstanceCount());
@@ -411,16 +410,17 @@ public class DatabasePolicyModelsProviderTest {
 
         assertEquals(pdpGroup.getName(), databaseProvider.deletePdpGroup(GROUP).getName());
 
-        assertEquals(0, databaseProvider.getPdpStatistics(null, null).size());
-        assertEquals(1, databaseProvider.createPdpStatistics(statisticsArrayList).size());
-        assertEquals(1, databaseProvider.updatePdpStatistics(statisticsArrayList).size());
-    }
+        List<PdpStatistics> statisticsArrayList = makePdpStatisticsList();
 
+        assertThat(databaseProvider.getPdpStatistics(null, null)).hasSize(0);
+        assertThat(databaseProvider.createPdpStatistics(statisticsArrayList)).hasSize(1);
+        assertThat(databaseProvider.updatePdpStatistics(statisticsArrayList)).hasSize(1);
+    }
 
     @Test
     public void testProviderMethodsStatistics() throws PfModelException {
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider.createPdpStatistics(makePdpStatisticsList());
 
         assertEquals(NAME, databaseProvider.getPdpStatistics(null, null).get(0).getPdpInstanceId());
         assertEquals(NAME, databaseProvider.getFilteredPdpStatistics(null, GROUP, null,
@@ -491,8 +491,7 @@ public class DatabasePolicyModelsProviderTest {
         List<PdpGroup> pdpGroups = new ArrayList<>();
         pdpGroups.add(pdpGroup);
 
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         databaseProvider.createPdpGroups(pdpGroups);
 
@@ -526,8 +525,7 @@ public class DatabasePolicyModelsProviderTest {
         List<PdpGroup> pdpGroups = new ArrayList<>();
         pdpGroups.add(pdpGroup);
 
-        PolicyModelsProvider databaseProvider =
-                new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
+        databaseProvider = new PolicyModelsProviderFactory().createPolicyModelsProvider(parameters);
 
         databaseProvider.createPdpGroups(pdpGroups);
 
@@ -539,4 +537,14 @@ public class DatabasePolicyModelsProviderTest {
 
         databaseProvider.close();
     }
+
+    private List<PdpStatistics> makePdpStatisticsList() {
+        PdpStatistics pdpStatistics = new PdpStatistics();
+        pdpStatistics.setPdpInstanceId(NAME);
+        pdpStatistics.setTimeStamp(TIMESTAMP);
+        pdpStatistics.setPdpGroupName(GROUP);
+        pdpStatistics.setPdpSubGroupName("type");
+        List<PdpStatistics> statisticsArrayList = List.of(pdpStatistics);
+        return statisticsArrayList;
+    }
 }