You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by me...@apache.org on 2018/06/22 05:28:10 UTC
ranger git commit: RANGER-2138 : Add unit tests for
org.apache.ranger.service package
Repository: ranger
Updated Branches:
refs/heads/master ee20663d4 -> 29fedc53f
RANGER-2138 : Add unit tests for org.apache.ranger.service package
Signed-off-by: Mehul Parikh <me...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/29fedc53
Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/29fedc53
Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/29fedc53
Branch: refs/heads/master
Commit: 29fedc53fdc4a9df9f5857e754cf6fdcad488cef
Parents: ee20663
Author: fatimaawez <fa...@gmail.com>
Authored: Thu Jun 21 18:26:59 2018 +0530
Committer: Mehul Parikh <me...@apache.org>
Committed: Fri Jun 22 10:57:55 2018 +0530
----------------------------------------------------------------------
.../ranger/service/TestAuthSessionService.java | 100 +++++++++++++
.../ranger/service/TestRangerAuditFields.java | 48 +++++++
.../service/TestRangerDataHistService.java | 113 +++++++++++++++
.../service/TestRangerPluginActivityLogger.java | 75 ++++++++++
.../TestRangerServiceWithAssignedIdService.java | 107 ++++++++++++++
.../TestRangerTagResourceMapService.java | 140 +++++++++++++++++++
.../ranger/service/TestRangerTagService.java | 140 +++++++++++++++++++
.../service/TestRangerTransactionService.java | 61 ++++++++
.../apache/ranger/service/TestUserService.java | 63 +++++++++
.../service/filter/TestRangerRESTAPIFilter.java | 48 +++++++
10 files changed, 895 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestAuthSessionService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestAuthSessionService.java b/security-admin/src/test/java/org/apache/ranger/service/TestAuthSessionService.java
new file mode 100644
index 0000000..292777e
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestAuthSessionService.java
@@ -0,0 +1,100 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+
+package org.apache.ranger.service;
+
+import javax.persistence.EntityManager;
+
+import org.apache.ranger.common.SearchCriteria;
+
+import org.apache.ranger.common.SearchUtil;
+
+import org.apache.ranger.common.db.BaseDao;
+import org.apache.ranger.entity.XXAuthSession;
+import org.apache.ranger.view.VXAuthSession;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestAuthSessionService {
+ @InjectMocks
+ AuthSessionService authSessionService = new AuthSessionService();
+
+ @Mock
+ VXAuthSession vXAuthSession;
+
+ @Mock
+ XXAuthSession mObj;
+
+ @Mock
+ XXAuthSession xXAuthSession;
+
+ @Mock
+ SearchCriteria searchCriteria;
+
+ @Mock
+ SearchUtil searchUtil;
+
+ @Mock
+ BaseDao entityDao;
+
+ @Test
+ public void test1GetResourceName() {
+ authSessionService.getResourceName();
+ }
+
+ @Test
+ public void test2CreateEntityObject() {
+ authSessionService.createEntityObject();
+ }
+
+ @Test
+ public void test3CreateViewObject() {
+ authSessionService.createViewObject();
+ }
+
+ @Test
+ public void test4search() {
+ SearchCriteria testSearchCriteria = createsearchCriteria();
+ EntityManager em = null;
+ Mockito.when(authSessionService.getDao().getEntityManager()).thenReturn(em);
+ authSessionService.search(testSearchCriteria);
+ }
+
+ private SearchCriteria createsearchCriteria() {
+ SearchCriteria testsearchCriteria = new SearchCriteria();
+ testsearchCriteria.setStartIndex(0);
+ testsearchCriteria.setMaxRows(Integer.MAX_VALUE);
+ testsearchCriteria.setSortBy("id");
+ testsearchCriteria.setSortType("asc");
+ testsearchCriteria.setGetCount(true);
+ testsearchCriteria.setOwnerId(null);
+ testsearchCriteria.setGetChildren(false);
+ testsearchCriteria.setDistinct(false);
+ return testsearchCriteria;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerAuditFields.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerAuditFields.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerAuditFields.java
new file mode 100644
index 0000000..1d71bc3
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerAuditFields.java
@@ -0,0 +1,48 @@
+/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited
+ *
+ * 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.
+ */
+
+package org.apache.ranger.service;
+
+import org.apache.ranger.entity.XXDBBase;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerAuditFields {
+
+ @InjectMocks
+ RangerAuditFields rangerAuditFields;
+
+ @Mock
+ XXDBBase XXDBBase;
+
+ @Test
+ public void test1PopulateAuditFields() {
+ rangerAuditFields.populateAuditFields(XXDBBase, XXDBBase);
+ }
+
+ @Test
+ public void test2PopulateAuditFieldsForCreate() {
+
+ rangerAuditFields.populateAuditFieldsForCreate(XXDBBase);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerDataHistService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerDataHistService.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerDataHistService.java
new file mode 100644
index 0000000..e1a236e
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerDataHistService.java
@@ -0,0 +1,113 @@
+/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited
+ *
+ * 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.
+ */
+
+package org.apache.ranger.service;
+
+import java.util.Date;
+
+import org.apache.ranger.db.RangerDaoManager;
+import org.apache.ranger.entity.XXDataHist;
+import org.apache.ranger.plugin.model.RangerBaseModelObject;
+import org.apache.ranger.plugin.model.RangerPolicy;
+import org.codehaus.jackson.map.ObjectMapper;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerDataHistService {
+
+ @InjectMocks
+ RangerDataHistService rangerDataHistService;
+
+ @Mock
+ RangerBaseModelObject baseModelObj;
+
+ @Mock
+ RangerDaoManager daoMgr;
+ @Mock
+ org.apache.ranger.db.XXDataHistDao XXDataHistDao;
+
+ @Mock
+ ObjectMapper mapper;
+
+ @Test
+ public void test1CreateObjectDataHistory() {
+ String action = "create";
+ RangerBaseModelObject baseModelObj = new RangerBaseModelObject();
+ Mockito.when(daoMgr.getXXDataHist()).thenReturn(XXDataHistDao);
+ rangerDataHistService.createObjectDataHistory(baseModelObj, action);
+
+ }
+
+ @Test
+ public void test2WriteObjectAsString() {
+ RangerBaseModelObject testbaseModelObj = createRangerBaseModelObject();
+ rangerDataHistService.writeObjectAsString(testbaseModelObj);
+
+ }
+
+ @Test
+ public void test3WriteJsonToJavaObject() {
+ XXDataHist XXDataHist = createXXDataHistObject();
+ rangerDataHistService.writeJsonToJavaObject(XXDataHist.getContent(), RangerPolicy.class);
+ }
+
+ private XXDataHist createXXDataHistObject() {
+ XXDataHist xDataHist = new XXDataHist();
+ Date date = new Date();
+ xDataHist.setObjectId(1L);
+ xDataHist.setObjectGuid("testGuid");
+ xDataHist.setCreateTime(date);
+ xDataHist.setAction("Create");
+ xDataHist.setVersion(1L);
+ xDataHist.setUpdateTime(date);
+ xDataHist.setFromTime(date);
+
+ xDataHist.setContent("{\"id\":3,\"guid\":\"c3991965-b063-4fff-b9e5-2e0aa566af29\""
+ + ",\"isEnabled\":true,\"createdBy\":\"Admin\",\""
+ + "updatedBy\":\"Admin\",\"createTime\":1529044511083,\"updateTime\""
+ + ":1529044511084,\"version\":1,\"service\":\"cl1_storm_01\",\"name\""
+ + ":\"all - topology\",\"policyType\":0,\"description\":\"Policy for all - topology\""
+ + ",\"resourceSignature\":\"61c9e34a1c273ed9263940cf79275e94\",\"isAuditEnabled\""
+ + ":true,\"resources\":{\"topology\":{\"values\":[\"*\"],\"isExcludes\":false,\"isRecursive\""
+ + ":false}},\"policyItems\":[{\"accesses\":[{\"type\":\"submitTopology\",\"isAllowed\":true}"
+ + ",{\"type\":\"fileUpload\",\"isAllowed\":true},{\"type\":\"fileDownload\",\"isAllowed\""
+ + ":true},{\"type\":\"killTopology\",\"isAllowed\":true},{\"type\":\"rebalance\",\"isAllowed\""
+ + ":true},{\"type\":\"activate\",\"isAllowed\":true},{\"type\":\"deactivate\",\"isAllowed\":true},{\"type\":\"getTopologyConf\",\"isAllowed\":true},{\"type\":\"getTopology\",\"isAllowed\":true},{\"type\":\"getUserTopology\",\"isAllowed\":true},{\"type\":\"getTopologyInfo\",\"isAllowed\":true},{\"type\":\"uploadNewCredentials\",\"isAllowed\":true}],\"users\":[\"test\",\"test123\",\"HTTP123\"],\"groups\":[],\"conditions\":[],\"delegateAdmin\":true}],\"denyPolicyItems\":[],\"allowExceptions\":[],\"denyExceptions\":[],\"dataMaskPolicyItems\":[],\"rowFilterPolicyItems\":[]} ");
+
+ return xDataHist;
+ }
+
+ private RangerBaseModelObject createRangerBaseModelObject() {
+ RangerBaseModelObject baseModelObj = new RangerBaseModelObject();
+ Date date = new Date();
+ baseModelObj.setCreatedBy("admin");
+ baseModelObj.setCreateTime(date);
+ baseModelObj.setGuid("testGuid");
+ baseModelObj.setIsEnabled(true);
+ baseModelObj.setUpdatedBy("admin");
+ baseModelObj.setUpdateTime(date);
+ baseModelObj.setVersion(1L);
+ return baseModelObj;
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerPluginActivityLogger.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerPluginActivityLogger.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerPluginActivityLogger.java
new file mode 100644
index 0000000..e501cc3
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerPluginActivityLogger.java
@@ -0,0 +1,75 @@
+/* Copyright 2004, 2005, 2006 Acegi Technology Pty Limited
+ *
+ * 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.
+ */
+
+package org.apache.ranger.service;
+
+import org.apache.ranger.db.RangerDaoManager;
+import org.apache.ranger.entity.XXPolicyExportAudit;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerPluginActivityLogger {
+
+ @InjectMocks
+ RangerPluginActivityLogger rangerPluginActivityLogger;
+
+ @Mock
+ RangerDaoManager rangerDaoManager;
+
+ @Mock
+ XXPolicyExportAudit xXPolicyExportAudit;
+
+ @Mock
+ RangerTransactionService transactionService;
+
+ @Mock
+ Runnable commitWork;
+
+ boolean pluginActivityAuditCommitInline = false;
+
+ @Test
+ public void test1CommitAfterTransactionComplete() {
+ pluginActivityAuditCommitInline = false;
+ rangerPluginActivityLogger.commitAfterTransactionComplete(commitWork);
+
+ }
+
+ @Test
+ public void test2Init() {
+ pluginActivityAuditCommitInline = false;
+ rangerPluginActivityLogger.init();
+
+ }
+
+ @Test
+ public void test3CommitAfterTransactionComplete() {
+ pluginActivityAuditCommitInline = true;
+ rangerPluginActivityLogger.commitAfterTransactionComplete(commitWork);
+ }
+
+ @Test
+ public void test4Init() {
+ pluginActivityAuditCommitInline = true;
+ rangerPluginActivityLogger.init();
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerServiceWithAssignedIdService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerServiceWithAssignedIdService.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerServiceWithAssignedIdService.java
new file mode 100644
index 0000000..c5221cd
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerServiceWithAssignedIdService.java
@@ -0,0 +1,107 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+package org.apache.ranger.service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.apache.ranger.db.RangerDaoManager;
+import org.apache.ranger.db.XXServiceConfigMapDao;
+import org.apache.ranger.db.XXServiceDao;
+import org.apache.ranger.db.XXServiceVersionInfoDao;
+import org.apache.ranger.entity.XXService;
+import org.apache.ranger.entity.XXServiceConfigMap;
+
+import org.apache.ranger.entity.XXServiceVersionInfo;
+import org.apache.ranger.entity.XXServiceWithAssignedId;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.apache.ranger.plugin.model.RangerService;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerServiceWithAssignedIdService {
+
+ @InjectMocks
+ RangerServiceWithAssignedIdService rangerServiceWithAssignedIdService;
+
+ @Mock
+ RangerDaoManager daoMgr;
+ @Mock
+ XXServiceConfigMapDao xXServiceConfigMapDao;
+
+ @Mock
+ org.apache.ranger.entity.XXServiceDef xXServiceDef;
+
+ @Mock
+ org.apache.ranger.db.XXServiceDefDao xXServiceDefDao;
+
+ @Mock
+ XXServiceDao xXServiceDao;
+
+ @Mock
+ XXService xXService;
+
+ @Mock
+ RangerService RangerService;
+
+ @Mock
+ org.apache.ranger.db.XXPortalUserDao xXPortalUserDao;
+
+ @Mock
+ XXServiceVersionInfoDao xXServiceVersionInfoDao;
+
+ @Mock
+ XXServiceVersionInfo xXServiceVersionInfo;
+
+ @Test
+ public void test1GetPopulatedViewObject() {
+ XXServiceWithAssignedId xXServiceWithAssignedId = new XXServiceWithAssignedId();
+ xXServiceWithAssignedId.setId(1L);
+ Date date = new Date();
+ xXServiceWithAssignedId.setIsEnabled(true);
+ xXServiceWithAssignedId.setName("testService");
+ xXServiceWithAssignedId.setPolicyVersion(1L);
+ xXServiceWithAssignedId.setVersion(1L);
+ xXServiceWithAssignedId.setCreateTime(date);
+ xXServiceWithAssignedId.setTagService(1L);
+ xXServiceWithAssignedId.setTagVersion(1L);
+ xXServiceWithAssignedId.setUpdateTime(date);
+ xXServiceWithAssignedId.setUpdatedByUserId(1L);
+ xXServiceWithAssignedId.setAddedByUserId(1L);
+ xXServiceWithAssignedId.setType(1L);
+ List<XXServiceConfigMap> svcConfigMapList = new ArrayList<XXServiceConfigMap>();
+ Mockito.when(daoMgr.getXXPortalUser()).thenReturn(xXPortalUserDao);
+ Mockito.when(daoMgr.getXXServiceDef()).thenReturn(xXServiceDefDao);
+ Mockito.when(xXServiceDefDao.getById(1L)).thenReturn(xXServiceDef);
+ Mockito.when(daoMgr.getXXService()).thenReturn(xXServiceDao);
+ Mockito.when(xXServiceDao.getById(1L)).thenReturn(xXService);
+ Mockito.when(daoMgr.getXXServiceVersionInfo()).thenReturn(xXServiceVersionInfoDao);
+ Mockito.when(xXServiceVersionInfoDao.findByServiceId(1L)).thenReturn(xXServiceVersionInfo);
+ Mockito.when(daoMgr.getXXServiceConfigMap()).thenReturn(xXServiceConfigMapDao);
+ Mockito.when(xXServiceConfigMapDao.findByServiceId(1L)).thenReturn(svcConfigMapList);
+ rangerServiceWithAssignedIdService.getPopulatedViewObject(xXServiceWithAssignedId);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagResourceMapService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagResourceMapService.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagResourceMapService.java
new file mode 100644
index 0000000..27ec8e1
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagResourceMapService.java
@@ -0,0 +1,140 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+package org.apache.ranger.service;
+
+import org.apache.ranger.db.RangerDaoManager;
+import org.apache.ranger.db.XXServiceVersionInfoDao;
+import org.apache.ranger.db.XXTagResourceMapDao;
+import org.apache.ranger.entity.XXTagResourceMap;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerTagResourceMapService {
+ @InjectMocks
+ RangerTagResourceMapService rangerTagResourceMapService;
+
+ @Mock
+ XXTagResourceMap xXTagResourceMap;
+
+ @Mock
+ RangerDaoManager daoMgr;
+
+ @Mock
+ XXServiceVersionInfoDao xXServiceVersionInfoDao;
+
+ @Mock
+ org.apache.ranger.db.XXPortalUserDao XXPortalUserDao;
+
+ @Mock
+ XXTagResourceMapDao xXTagResourceMapDao;
+
+ @Test
+ public void test1PostCreate() {
+ Mockito.when(daoMgr.getXXPortalUser()).thenReturn(XXPortalUserDao);
+ Mockito.when(daoMgr.getXXServiceVersionInfo()).thenReturn(xXServiceVersionInfoDao);
+ rangerTagResourceMapService.postCreate(xXTagResourceMap);
+
+ }
+
+ @Test
+ public void test2PostUpdate() {
+ Mockito.when(daoMgr.getXXPortalUser()).thenReturn(XXPortalUserDao);
+ Mockito.when(daoMgr.getXXServiceVersionInfo()).thenReturn(xXServiceVersionInfoDao);
+ rangerTagResourceMapService.postUpdate(xXTagResourceMap);
+
+ }
+
+ @Test
+ public void test3GetPopulatedViewObject() {
+ Mockito.when(daoMgr.getXXPortalUser()).thenReturn(XXPortalUserDao);
+ rangerTagResourceMapService.getPopulatedViewObject(xXTagResourceMap);
+
+ }
+
+ @Test
+ public void test4GetByTagId() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByTagId(1L);
+
+ }
+
+ @Test
+ public void test5GetByTagGuid() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByTagGuid("1");
+
+ }
+
+ @Test
+ public void test6GetByResourceId() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByResourceId(1L);
+
+ }
+
+ @Test
+ public void test7GetTagIdsForResourceId() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getTagIdsForResourceId(1L);
+
+ }
+
+ @Test
+ public void test8GetByResourceGuid() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByResourceGuid("1");
+
+ }
+
+ @Test
+ public void test9GetByGuid() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByGuid("1");
+
+ }
+
+ @Test
+ public void test10GetByTagAndResourceId() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByTagAndResourceId(1L, 1L);
+
+ }
+
+ @Test
+ public void test11GetByTagAndResourceGuid() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getByTagAndResourceGuid("1", "1");
+
+ }
+
+ @Test
+ public void test12GetTagResourceMapsByServiceId() {
+ Mockito.when(daoMgr.getXXTagResourceMap()).thenReturn(xXTagResourceMapDao);
+ rangerTagResourceMapService.getTagResourceMapsByServiceId(1L);
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagService.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagService.java
new file mode 100644
index 0000000..1175989
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagService.java
@@ -0,0 +1,140 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+package org.apache.ranger.service;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+
+import java.util.Date;
+
+import org.apache.ranger.db.RangerDaoManager;
+import org.apache.ranger.db.XXPortalUserDao;
+import org.apache.ranger.db.XXServiceVersionInfoDao;
+import org.apache.ranger.db.XXTagAttributeDao;
+import org.apache.ranger.db.XXTagDao;
+import org.apache.ranger.db.XXTagDefDao;
+import org.apache.ranger.entity.XXTag;
+import org.apache.ranger.entity.XXTagDef;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerTagService {
+
+ @InjectMocks
+ RangerTagService rangerTagService;
+
+ @Mock
+ XXTag xXTag;
+
+ @Mock
+ RangerDaoManager daoMgr;
+
+ @Mock
+ XXPortalUserDao xXPortalUserDao;
+
+ @Mock
+ XXServiceVersionInfoDao xXServiceVersionInfoDao;
+
+ @Mock
+ XXTagDefDao xXTagDefDao;
+
+ @Mock
+ XXTagDef xXTagDef;
+
+ @Mock
+ XXTagAttributeDao xXTagAttributeDao;
+
+ @Mock
+ XXTagDao xXTagDao;
+
+ @Test
+ public void test1postUpdate() {
+ Mockito.when(daoMgr.getXXPortalUser()).thenReturn(xXPortalUserDao);
+ Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+ Mockito.when(daoMgr.getXXTagAttribute()).thenReturn(xXTagAttributeDao);
+ Mockito.when(xXTagDefDao.getById(xXTag.getType())).thenReturn(xXTagDef);
+ Mockito.when(daoMgr.getXXServiceVersionInfo()).thenReturn(xXServiceVersionInfoDao);
+ rangerTagService.postUpdate(xXTag);
+
+ }
+
+ @Test
+ public void test2GetPopulatedViewObject() {
+ Mockito.when(daoMgr.getXXPortalUser()).thenReturn(xXPortalUserDao);
+ Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+ XXTag xXTag = createXXTag();
+ Mockito.when(xXTagDefDao.getById(1L)).thenReturn(xXTagDef);
+ Mockito.when(daoMgr.getXXTagAttribute()).thenReturn(xXTagAttributeDao);
+ rangerTagService.getPopulatedViewObject(xXTag);
+
+ }
+
+ @Test
+ public void test3GetTagByGuid() {
+ Mockito.when(daoMgr.getXXTag()).thenReturn(xXTagDao);
+ rangerTagService.getTagByGuid("1");
+
+ }
+
+ @Test
+ public void test4GetTagsByType() {
+ Mockito.when(daoMgr.getXXTag()).thenReturn(xXTagDao);
+ rangerTagService.getTagsByType("testTagName");
+
+ }
+
+ @Test
+ public void test5GetTagsForResourceId() {
+ Mockito.when(daoMgr.getXXTag()).thenReturn(xXTagDao);
+ rangerTagService.getTagsForResourceId(1L);
+
+ }
+
+ @Test
+ public void test6GetTagsForResourceGuid() {
+ Mockito.when(daoMgr.getXXTag()).thenReturn(xXTagDao);
+ rangerTagService.getTagsForResourceGuid("1");
+
+ }
+
+ @Test
+ public void test7getTagsByServiceId() {
+ Mockito.when(daoMgr.getXXTag()).thenReturn(xXTagDao);
+ rangerTagService.getTagsByServiceId(1L);
+ }
+
+ private XXTag createXXTag() {
+ XXTag xXTag = new XXTag();
+ xXTag.setAddedByUserId(1L);
+ Date date = new Date();
+ xXTag.setCreateTime(date);
+ xXTag.setGuid("1");
+ xXTag.setType(1L);
+ xXTag.setUpdatedByUserId(1L);
+ xXTag.setVersion(1L);
+ xXTag.setId(1L);
+ return xXTag;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestRangerTransactionService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestRangerTransactionService.java b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTransactionService.java
new file mode 100644
index 0000000..9ba9cf1
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTransactionService.java
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+package org.apache.ranger.service;
+
+import java.util.concurrent.ScheduledExecutorService;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerTransactionService {
+
+ @InjectMocks
+ RangerTransactionService rangerTransactionService;
+
+ @Mock
+ ScheduledExecutorService scheduler;
+
+ @Mock
+ Runnable task;
+
+ @Test
+ public void test1Init() {
+ rangerTransactionService.init();
+
+ }
+
+ @Test
+ public void test2Destroy() {
+ rangerTransactionService.destroy();
+
+ }
+
+ @Test
+ public void test3ExecuteAfterTransactionComplete() {
+ rangerTransactionService.executeAfterTransactionComplete(task);
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/TestUserService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/TestUserService.java b/security-admin/src/test/java/org/apache/ranger/service/TestUserService.java
new file mode 100644
index 0000000..c48739b
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/TestUserService.java
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+package org.apache.ranger.service;
+
+import org.apache.ranger.db.RangerDaoManager;
+import org.apache.ranger.db.XXPortalUserRoleDao;
+import org.apache.ranger.entity.XXPortalUser;
+import org.apache.ranger.view.VXPortalUser;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestUserService {
+
+ @InjectMocks
+ UserService userService;
+
+ @Mock
+ XXPortalUser xXPortalUser;
+
+ @Mock
+ VXPortalUser vXPortalUser;
+
+ @Mock
+ RangerDaoManager daoManager;
+
+ @Mock
+ XXPortalUserRoleDao xXPortalUserRoleDao;
+
+ @Test
+ public void test1GetInstance() {
+ userService.getInstance();
+ }
+
+ @Test
+ public void test2GjUserToUserProfile() {
+ Mockito.when(daoManager.getXXPortalUserRole()).thenReturn(xXPortalUserRoleDao);
+ userService.gjUserToUserProfile(xXPortalUser, vXPortalUser);
+ }
+}
http://git-wip-us.apache.org/repos/asf/ranger/blob/29fedc53/security-admin/src/test/java/org/apache/ranger/service/filter/TestRangerRESTAPIFilter.java
----------------------------------------------------------------------
diff --git a/security-admin/src/test/java/org/apache/ranger/service/filter/TestRangerRESTAPIFilter.java b/security-admin/src/test/java/org/apache/ranger/service/filter/TestRangerRESTAPIFilter.java
new file mode 100644
index 0000000..176fcaf
--- /dev/null
+++ b/security-admin/src/test/java/org/apache/ranger/service/filter/TestRangerRESTAPIFilter.java
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+
+package org.apache.ranger.service.filter;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+
+import com.sun.jersey.spi.container.ContainerRequest;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerRESTAPIFilter {
+
+ @InjectMocks
+ RangerRESTAPIFilter rangerRESTAPIFilter = new RangerRESTAPIFilter();
+
+ @Mock
+ ContainerRequest request;
+
+ @Test
+ public void test1Filter() {
+ rangerRESTAPIFilter.filter(request);
+
+ }
+
+}