aboutsummaryrefslogtreecommitdiffstats
path: root/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp
diff options
context:
space:
mode:
Diffstat (limited to 'POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp')
-rw-r--r--POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/CommonClassDaoImplTest.java162
-rw-r--r--POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/SystemLogDbDaoImplTest.java77
2 files changed, 194 insertions, 45 deletions
diff --git a/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/CommonClassDaoImplTest.java b/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/CommonClassDaoImplTest.java
index e7212f109..2b1052044 100644
--- a/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/CommonClassDaoImplTest.java
+++ b/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/CommonClassDaoImplTest.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP Policy Engine
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017, 2019-2020 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Modifications Copyright (C) 2019 Samsung
* ================================================================================
@@ -24,8 +24,13 @@ package org.onap.policy.daoImp;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
+import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.when;
+
import java.io.File;
import java.util.ArrayList;
import java.util.Date;
@@ -34,10 +39,15 @@ import java.util.Properties;
import javax.script.SimpleBindings;
import org.apache.tomcat.dbcp.dbcp2.BasicDataSource;
import org.h2.tools.Server;
+import org.hibernate.Criteria;
+import org.hibernate.HibernateException;
+import org.hibernate.Session;
import org.hibernate.SessionFactory;
+import org.hibernate.Transaction;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.mockito.Mockito;
import org.onap.policy.common.logging.flexlogger.FlexLogger;
import org.onap.policy.common.logging.flexlogger.Logger;
import org.onap.policy.conf.HibernateSession;
@@ -46,7 +56,7 @@ import org.onap.policy.rest.jpa.OnapName;
import org.onap.policy.rest.jpa.PolicyEntity;
import org.onap.policy.rest.jpa.PolicyRoles;
import org.onap.policy.rest.jpa.PolicyVersion;
-import org.onap.policy.rest.jpa.SystemLogDB;
+import org.onap.policy.rest.jpa.SystemLogDb;
import org.onap.policy.rest.jpa.UserInfo;
import org.onap.policy.rest.jpa.WatchPolicyNotificationTable;
import org.springframework.orm.hibernate4.LocalSessionFactoryBuilder;
@@ -61,6 +71,11 @@ public class CommonClassDaoImplTest {
Server server;
CommonClassDaoImpl commonClassDao;
+ /**
+ * setUp.
+ *
+ * @throws Exception Exception
+ */
@Before
public void setUp() throws Exception {
try {
@@ -87,13 +102,13 @@ public class CommonClassDaoImplTest {
CommonClassDaoImpl.setSessionfactory(sessionFactory);
PolicyController.setLogTableLimit("1");
HibernateSession.setSession(sessionFactory);
- SystemLogDB data1 = new SystemLogDB();
+ SystemLogDb data1 = new SystemLogDb();
data1.setDate(new Date());
data1.setLogtype("INFO");
data1.setRemote("Test");
data1.setSystem("Test");
data1.setType("Test");
- SystemLogDB data2 = new SystemLogDB();
+ SystemLogDb data2 = new SystemLogDb();
data2.setDate(new Date());
data2.setLogtype("error");
data2.setRemote("Test");
@@ -122,13 +137,13 @@ public class CommonClassDaoImplTest {
userinfo.setUserName("Test");
commonClassDao.save(userinfo);
OnapName onapName = new OnapName();
- onapName.setOnapName("Test");
+ onapName.setName("Test");
onapName.setUserCreatedBy(userinfo);
onapName.setUserModifiedBy(userinfo);
onapName.setModifiedDate(new Date());
commonClassDao.save(onapName);
- List<Object> list = commonClassDao.getData(OnapName.class);
+ List<?> list = commonClassDao.getData(OnapName.class);
assertTrue(list.size() == 1);
logger.debug(list.size());
logger.debug(list.get(0));
@@ -145,18 +160,17 @@ public class CommonClassDaoImplTest {
try {
// Add data
UserInfo userinfo = new UserInfo();
- String loginId_userName = "Test";
- userinfo.setUserLoginId(loginId_userName);
- userinfo.setUserName(loginId_userName);
+ String loginIdUserName = "Test";
+ userinfo.setUserLoginId(loginIdUserName);
+ userinfo.setUserName(loginIdUserName);
commonClassDao.save(userinfo);
- List<Object> dataCur =
- commonClassDao.getDataByQuery("from UserInfo", new SimpleBindings());
+ List<?> dataCur = commonClassDao.getDataByQuery("from UserInfo", new SimpleBindings());
assertEquals(1, dataCur.size());
UserInfo cur = (UserInfo) dataCur.get(0);
- assertEquals(loginId_userName, cur.getUserLoginId());
- assertEquals(loginId_userName, cur.getUserName());
+ assertEquals(loginIdUserName, cur.getUserLoginId());
+ assertEquals(loginIdUserName, cur.getUserName());
assertFalse(dataCur.isEmpty());
@@ -183,13 +197,12 @@ public class CommonClassDaoImplTest {
pe.setCreatedBy("Test");
commonClassDao.save(pe);
- List<Object> dataCur =
- commonClassDao.getDataByQuery("from PolicyEntity", new SimpleBindings());
+ List<?> dataCur = commonClassDao.getDataByQuery("from PolicyEntity", new SimpleBindings());
assertTrue(1 == dataCur.size());
assertTrue(dataCur.get(0) instanceof PolicyEntity);
assertEquals(name, ((PolicyEntity) dataCur.get(0)).getPolicyName());
- assertEquals(pe, ((PolicyEntity) dataCur.get(0)));
+ assertEquals(pe, (dataCur.get(0)));
} catch (Exception e) {
logger.debug("Exception Occured" + e);
@@ -225,10 +238,10 @@ public class CommonClassDaoImplTest {
String query = "From PolicyVersion where policy_name like :scope and id > 0";
SimpleBindings params = new SimpleBindings();
params.put("scope", scope);
- List<Object> dataCur = commonClassDao.getDataByQuery(query, params);
+ List<?> dataCur = commonClassDao.getDataByQuery(query, params);
assertTrue(1 == dataCur.size());
- assertEquals(pv, (PolicyVersion) dataCur.get(0));
+ assertEquals(pv, dataCur.get(0));
} catch (Exception e) {
logger.debug("Exception Occured" + e);
@@ -243,11 +256,11 @@ public class CommonClassDaoImplTest {
try {
// Add data
WatchPolicyNotificationTable watch = new WatchPolicyNotificationTable();
- String policyFileName = "banana";
watch.setLoginIds("Test");
watch.setPolicyName("bananaWatch");
commonClassDao.save(watch);
+ String policyFileName = "banana";
if (policyFileName.contains("/")) {
policyFileName = policyFileName.substring(0, policyFileName.indexOf("/"));
policyFileName = policyFileName.replace("/", File.separator);
@@ -262,12 +275,12 @@ public class CommonClassDaoImplTest {
String query = "from WatchPolicyNotificationTable where policyName like:policyFileName";
SimpleBindings params = new SimpleBindings();
params.put("policyFileName", policyFileName);
- List<Object> dataCur = commonClassDao.getDataByQuery(query, params);
+ List<?> dataCur = commonClassDao.getDataByQuery(query, params);
// Assertions
assertTrue(dataCur.size() == 1);
assertTrue(dataCur.get(0) instanceof WatchPolicyNotificationTable);
- assertEquals(watch, (WatchPolicyNotificationTable) dataCur.get(0));
+ assertEquals(watch, dataCur.get(0));
} catch (Exception e) {
logger.debug("Exception Occured" + e);
@@ -293,20 +306,19 @@ public class CommonClassDaoImplTest {
commonClassDao.save(pe);
String dbCheckName = "dummyScope:action";
- String[] splitDBCheckName = dbCheckName.split(":");
// Current Implementation
- String query =
- "FROM PolicyEntity where policyName like :splitDBCheckName1 and scope = :splitDBCheckName0";
+ String query = "FROM PolicyEntity where policyName like :splitDBCheckName1 and scope = :splitDBCheckName0";
SimpleBindings params = new SimpleBindings();
- params.put("splitDBCheckName1", splitDBCheckName[1] + "%");
- params.put("splitDBCheckName0", splitDBCheckName[0]);
- List<Object> dataCur = commonClassDao.getDataByQuery(query, params);
+ String[] splitDbCheckName = dbCheckName.split(":");
+ params.put("splitDBCheckName1", splitDbCheckName[1] + "%");
+ params.put("splitDBCheckName0", splitDbCheckName[0]);
+ List<?> dataCur = commonClassDao.getDataByQuery(query, params);
// Assertions
assertTrue(dataCur.size() == 1);
assertTrue(dataCur.get(0) instanceof PolicyEntity);
- assertEquals(pe, (PolicyEntity) dataCur.get(0));
+ assertEquals(pe, dataCur.get(0));
} catch (Exception e) {
logger.debug("Exception Occured" + e);
@@ -328,17 +340,16 @@ public class CommonClassDaoImplTest {
commonClassDao.save(watch);
// Current Implementation
- String query =
- "from WatchPolicyNotificationTable where POLICYNAME = :finalName and LOGINIDS = :userId";
+ String query = "from WatchPolicyNotificationTable where POLICYNAME = :finalName and LOGINIDS = :userId";
SimpleBindings params = new SimpleBindings();
params.put("finalName", finalName);
params.put("userId", userId);
- List<Object> dataCur = commonClassDao.getDataByQuery(query, params);
+ List<?> dataCur = commonClassDao.getDataByQuery(query, params);
// Assertions
assertTrue(dataCur.size() == 1);
assertTrue(dataCur.get(0) instanceof WatchPolicyNotificationTable);
- assertEquals(watch, (WatchPolicyNotificationTable) dataCur.get(0));
+ assertEquals(watch, dataCur.get(0));
} catch (Exception e) {
logger.debug("Exception Occured" + e);
@@ -371,20 +382,19 @@ public class CommonClassDaoImplTest {
String finalName = "banana' OR '1'='1";
// Current Implementation
- String query =
- "from WatchPolicyNotificationTable where POLICYNAME = :finalName and LOGINIDS = :userId";
+ String query = "from WatchPolicyNotificationTable where POLICYNAME = :finalName and LOGINIDS = :userId";
SimpleBindings params = new SimpleBindings();
params.put("finalName", finalName);
params.put("userId", userId);
- List<Object> dataCur = commonClassDao.getDataByQuery(query, params);
+ List<?> dataCur = commonClassDao.getDataByQuery(query, params);
// Assertions
assertTrue(dataCur.size() <= 1);
if (dataCur.size() >= 1) {
assertTrue(dataCur.get(0) instanceof WatchPolicyNotificationTable);
- assertFalse(watch.equals((WatchPolicyNotificationTable) dataCur.get(0)));
- assertFalse(watch.equals((WatchPolicyNotificationTable) dataCur.get(0)));
+ assertFalse(watch.equals(dataCur.get(0)));
+ assertFalse(watch.equals(dataCur.get(0)));
}
} catch (Exception e) {
logger.debug("Exception Occured" + e);
@@ -399,19 +409,17 @@ public class CommonClassDaoImplTest {
userInfo.setUserLoginId("TestID");
userInfo.setUserName("Test");
commonClassDao.save(userInfo);
- List<Object> data = commonClassDao.getDataById(UserInfo.class, "userLoginId:userName",
- "TestID:Test");
+ List<?> data = commonClassDao.getDataById(UserInfo.class, "userLoginId:userName", "TestID:Test");
assertTrue(data.size() == 1);
UserInfo userInfoUpdate = (UserInfo) data.get(0);
userInfoUpdate.setUserName("Test1");
commonClassDao.update(userInfoUpdate);
List<String> data1 = commonClassDao.getDataByColumn(UserInfo.class, "userLoginId");
assertTrue(data1.size() == 1);
- UserInfo data2 = (UserInfo) commonClassDao.getEntityItem(UserInfo.class,
- "userLoginId:userName", "TestID:Test1");
+ UserInfo data2 =
+ (UserInfo) commonClassDao.getEntityItem(UserInfo.class, "userLoginId:userName", "TestID:Test1");
assertTrue("TestID".equals(data2.getUserLoginId()));
- List<Object> data3 = commonClassDao.checkDuplicateEntry("TestID:Test1",
- "userLoginId:userName", UserInfo.class);
+ List<?> data3 = commonClassDao.checkDuplicateEntry("TestID:Test1", "userLoginId:userName", UserInfo.class);
assertTrue(data3.size() == 1);
PolicyRoles roles = new PolicyRoles();
roles.setRole("admin");
@@ -422,8 +430,8 @@ public class CommonClassDaoImplTest {
assertTrue(roles1.size() == 1);
List<String> multipleData = new ArrayList<>();
multipleData.add("TestID:Test1");
- List<Object> data4 = commonClassDao.getMultipleDataOnAddingConjunction(UserInfo.class,
- "userLoginId:userName", multipleData);
+ List<?> data4 = commonClassDao.getMultipleDataOnAddingConjunction(UserInfo.class, "userLoginId:userName",
+ multipleData);
assertTrue(data4.size() == 1);
commonClassDao.delete(data2);
} catch (Exception e) {
@@ -454,6 +462,70 @@ public class CommonClassDaoImplTest {
}
}
+ @SuppressWarnings("unchecked")
+ @Test
+ public void testExceptions() throws HibernateException {
+ SessionFactory sfMock = Mockito.mock(SessionFactory.class);
+ Session mockSession = Mockito.mock(Session.class);
+ Criteria crMock = Mockito.mock(Criteria.class);
+ Transaction mockTransaction = Mockito.mock(Transaction.class);
+
+ CommonClassDaoImpl.setSessionfactory(sfMock);
+
+ when(sfMock.openSession()).thenReturn(mockSession);
+ when(mockSession.createCriteria(OnapName.class)).thenReturn(crMock);
+
+ when(crMock.list()).thenThrow(HibernateException.class);
+ when(mockSession.close()).thenThrow(HibernateException.class);
+
+ when(mockSession.beginTransaction()).thenReturn(mockTransaction);
+ doThrow(HibernateException.class).when(mockTransaction).commit();
+
+ List<?> dataList = commonClassDao.getData(OnapName.class);
+ assertNull(dataList);
+
+ List<?> dataByIdList = commonClassDao.getDataById(UserInfo.class, "userLoginId:userName", "TestID:Test");
+ assertNull(dataByIdList);
+
+ commonClassDao.save(null);
+ commonClassDao.delete(null);
+ commonClassDao.update(null);
+
+ List<?> dupEntryList =
+ commonClassDao.checkDuplicateEntry("TestID:Test", "userLoginId:userName", UserInfo.class);
+ assertNull(dupEntryList);
+
+ List<PolicyRoles> userRoles = commonClassDao.getUserRoles();
+ assertNull(userRoles);
+
+ Object entityItem = commonClassDao.getEntityItem(UserInfo.class, "testColName", "testKey");
+ assertNull(entityItem);
+
+ commonClassDao.updateQuery("testQueryString");
+
+ List<String> dataByColumn = commonClassDao.getDataByColumn(UserInfo.class, "testColName");
+ assertNull(dataByColumn);
+
+ List<?> entityData = commonClassDao.getMultipleDataOnAddingConjunction(UserInfo.class, "", null);
+ assertNull(entityData);
+ }
+
+ @Test
+ public void testCheckExistingGroupListforUpdate() {
+ Object retObj = commonClassDao.checkExistingGroupListforUpdate("testString1", "testString2");
+ assertNotNull(retObj);
+ assertTrue(retObj instanceof List);
+ List<?> retList = (List<?>) retObj;
+ assertTrue(retList.isEmpty());
+ }
+
+ @Test
+ public void testEmptyMethods() {
+ commonClassDao.deleteAll();
+ commonClassDao.updateClAlarms("TestString1", "TestString2");
+ commonClassDao.updateClYaml("TestString1", "TestString2");
+ }
+
@After
public void deleteDB() {
sessionFactory.close();
diff --git a/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/SystemLogDbDaoImplTest.java b/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/SystemLogDbDaoImplTest.java
new file mode 100644
index 000000000..44f034c20
--- /dev/null
+++ b/POLICY-SDK-APP/src/test/java/org/onap/policy/daoImp/SystemLogDbDaoImplTest.java
@@ -0,0 +1,77 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP Policy Engine
+ * ================================================================================
+ * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * 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.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.daoImp;
+
+import static org.junit.Assert.assertNull;
+import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.when;
+
+import java.util.List;
+
+import org.hibernate.HibernateException;
+import org.hibernate.Session;
+import org.hibernate.SessionFactory;
+import org.hibernate.Transaction;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.mockito.Mockito;
+import org.onap.policy.conf.HibernateSession;
+import org.onap.policy.controller.PolicyController;
+import org.onap.policy.rest.jpa.SystemLogDb;
+
+public class SystemLogDbDaoImplTest {
+ private static Session mockSession = Mockito.mock(Session.class);
+ private static SessionFactory sfMock = Mockito.mock(SessionFactory.class);
+ private static Transaction mockTransaction = Mockito.mock(Transaction.class);
+ private SystemLogDbDaoImpl sysLogImpl = new SystemLogDbDaoImpl();
+
+ @SuppressWarnings("unchecked")
+ @BeforeClass
+ public static void setup() {
+ HibernateSession.setSession(sfMock);
+
+ when(sfMock.openSession()).thenReturn(mockSession);
+ when(mockSession.beginTransaction()).thenReturn(mockTransaction);
+
+ doThrow(HibernateException.class).when(mockTransaction).commit();
+ when(mockSession.close()).thenThrow(HibernateException.class);
+
+ PolicyController.setjUnit(true);
+ }
+
+ @Test
+ public void testGettingLoggingData() {
+ List<SystemLogDb> loggingData = sysLogImpl.getLoggingData();
+ assertNull(loggingData);
+ }
+
+ @Test
+ public void testGetSystemAlertData() {
+ List<SystemLogDb> systemAlertData = sysLogImpl.getSystemAlertData();
+ assertNull(systemAlertData);
+ }
+
+ @AfterClass
+ public static void resetjUnit() {
+ PolicyController.setjUnit(false);
+ }
+}