http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/26bfd131/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefService.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefService.java
 
b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefService.java
new file mode 100644
index 0000000..2ca0fd2
--- /dev/null
+++ 
b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefService.java
@@ -0,0 +1,274 @@
+/*
+ * 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.XXServiceVersionInfoDao;
+import org.apache.ranger.db.XXTagAttributeDefDao;
+import org.apache.ranger.db.XXTagDefDao;
+import org.apache.ranger.entity.XXTagAttributeDef;
+import org.apache.ranger.entity.XXTagDef;
+import org.apache.ranger.plugin.model.RangerTagDef;
+import org.junit.Assert;
+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.runners.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerTagDefService {
+       Long id = 1L;
+       String guid = "989898_01_1";
+       String name = "test";
+       Long serviceId = 5L;
+
+       @InjectMocks
+       RangerTagDefService rangerTagDefService = new RangerTagDefService();
+       
+       @Mock
+       RangerDaoManager daoMgr;
+       
+       @Test
+       public void test1ValidateForCreate() {
+               RangerTagDef rangerServiceDef = new RangerTagDef();
+               
+               rangerTagDefService.validateForCreate(rangerServiceDef);
+               Assert.assertNotNull(rangerServiceDef);
+       }
+       
+       @Test
+       public void test2validateForUpdate() {
+               RangerTagDef rangerServiceDef = new RangerTagDef();
+               XXTagDef xXTagDef = new XXTagDef();
+               
+               rangerTagDefService.validateForUpdate(rangerServiceDef, 
xXTagDef);
+               Assert.assertNotNull(rangerServiceDef);
+       }
+       
+       @Test
+       public void test3postUpdate(){
+               XXTagDef tagDef = new XXTagDef();
+               tagDef.setId(id);
+               tagDef.setName(name);
+               tagDef.setUpdateTime(new Date());
+               
+               List<XXTagAttributeDef> tagAttrDefList = new 
ArrayList<XXTagAttributeDef>();
+               XXTagAttributeDef xxTagAttributeDef = new XXTagAttributeDef();
+               xxTagAttributeDef.setId(id);
+               xxTagAttributeDef.setName(name);
+               tagAttrDefList.add(xxTagAttributeDef);
+               
+               XXTagAttributeDefDao xxTagAttributeDefDao = 
Mockito.mock(XXTagAttributeDefDao.class);
+               XXServiceVersionInfoDao xxServiceVersionInfoDao = 
Mockito.mock(XXServiceVersionInfoDao.class);
+               
+               
Mockito.when(daoMgr.getXXTagAttributeDef()).thenReturn(xxTagAttributeDefDao);
+               
Mockito.when(xxTagAttributeDefDao.findByTagDefId(tagDef.getId())).thenReturn(tagAttrDefList);
+               
+               
Mockito.when(daoMgr.getXXServiceVersionInfo()).thenReturn(xxServiceVersionInfoDao);
+               
Mockito.doNothing().when(xxServiceVersionInfoDao).updateServiceVersionInfoForTagDefUpdate(tagDef.getId(),
 tagDef.getUpdateTime());
+               
+               RangerTagDef result = rangerTagDefService.postUpdate(tagDef);
+               Assert.assertEquals(result.getId(), 
tagAttrDefList.get(0).getId());
+               Assert.assertEquals(result.getName(), 
tagAttrDefList.get(0).getName());
+               
+               Mockito.verify(daoMgr).getXXTagAttributeDef();
+               
Mockito.verify(xxTagAttributeDefDao).findByTagDefId(tagDef.getId());
+               Mockito.verify(daoMgr).getXXServiceVersionInfo();
+               
Mockito.verify(xxServiceVersionInfoDao).updateServiceVersionInfoForTagDefUpdate(tagDef.getId(),
 tagDef.getUpdateTime());
+       }
+               
+       @Test
+       public void test4getTagDefByGuid(){
+               XXTagDef xxTagDef = new XXTagDef();
+               xxTagDef.setId(id);
+               xxTagDef.setName(name);
+               xxTagDef.setUpdateTime(new Date());
+               
+               XXTagDefDao xXTagDefDao = Mockito.mock(XXTagDefDao.class);
+               Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+               Mockito.when(xXTagDefDao.findByGuid(guid)).thenReturn(xxTagDef);
+               
+               List<XXTagAttributeDef> tagAttrDefList = new 
ArrayList<XXTagAttributeDef>();
+               XXTagAttributeDef xxTagAttributeDef = new XXTagAttributeDef();
+               xxTagAttributeDef.setId(id);
+               xxTagAttributeDef.setName(name);
+               tagAttrDefList.add(xxTagAttributeDef);
+               
+               XXTagAttributeDefDao xxTagAttributeDefDao = 
Mockito.mock(XXTagAttributeDefDao.class);
+               
+               
Mockito.when(daoMgr.getXXTagAttributeDef()).thenReturn(xxTagAttributeDefDao);
+               
Mockito.when(xxTagAttributeDefDao.findByTagDefId(xxTagDef.getId())).thenReturn(tagAttrDefList);
+               
+               RangerTagDef result = rangerTagDefService.getTagDefByGuid(guid);
+               Assert.assertEquals(result.getId(), 
tagAttrDefList.get(0).getId());
+               Assert.assertEquals(result.getName(), 
tagAttrDefList.get(0).getName());
+               
+               Mockito.verify(daoMgr).getXXTagDef();
+               Mockito.verify(xXTagDefDao).findByGuid(guid);
+               Mockito.verify(daoMgr).getXXTagAttributeDef();
+               
Mockito.verify(xxTagAttributeDefDao).findByTagDefId(xxTagDef.getId());
+       }
+       
+       @Test
+       public void test5getTagDefByGuid(){
+               XXTagDef xxTagDef = null;
+               
+               XXTagDefDao xXTagDefDao = Mockito.mock(XXTagDefDao.class);
+               Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+               Mockito.when(xXTagDefDao.findByGuid(guid)).thenReturn(xxTagDef);
+               
+               RangerTagDef result = rangerTagDefService.getTagDefByGuid(guid);
+               Assert.assertNull(result);
+               
+               Mockito.verify(daoMgr).getXXTagDef();
+               Mockito.verify(xXTagDefDao).findByGuid(guid);
+       }
+       
+       @Test
+       public void test6getTagDefByName(){
+               RangerTagDef oldTagDef = new RangerTagDef();
+               oldTagDef.setId(id);
+               oldTagDef.setName(name);
+               XXTagDef xxTagDef = new XXTagDef();
+               xxTagDef.setId(id);
+               xxTagDef.setName(name);
+               xxTagDef.setUpdateTime(new Date());
+               
+               XXTagDefDao xXTagDefDao = Mockito.mock(XXTagDefDao.class);
+               Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+               Mockito.when(xXTagDefDao.findByName(name)).thenReturn(xxTagDef);
+               
+               List<XXTagAttributeDef> tagAttrDefList = new 
ArrayList<XXTagAttributeDef>();
+               XXTagAttributeDef xxTagAttributeDef = new XXTagAttributeDef();
+               xxTagAttributeDef.setId(id);
+               xxTagAttributeDef.setName(name);
+               tagAttrDefList.add(xxTagAttributeDef);
+               
+               XXTagAttributeDefDao xxTagAttributeDefDao = 
Mockito.mock(XXTagAttributeDefDao.class);
+               
+               
Mockito.when(daoMgr.getXXTagAttributeDef()).thenReturn(xxTagAttributeDefDao);
+               
Mockito.when(xxTagAttributeDefDao.findByTagDefId(xxTagDef.getId())).thenReturn(tagAttrDefList);
+               
+               RangerTagDef result = rangerTagDefService.getTagDefByName(name);
+               Assert.assertEquals(result.getId(), 
tagAttrDefList.get(0).getId());
+               Assert.assertEquals(result.getName(), 
tagAttrDefList.get(0).getName());
+               
+               Mockito.verify(daoMgr).getXXTagDef();
+               Mockito.verify(xXTagDefDao).findByName(name);
+               Mockito.verify(daoMgr).getXXTagAttributeDef();
+               
Mockito.verify(xxTagAttributeDefDao).findByTagDefId(xxTagDef.getId());
+       }
+       
+       @Test
+       public void test7getTagDefByName(){
+               XXTagDef xxTagDef = null;
+               
+               XXTagDefDao xXTagDefDao = Mockito.mock(XXTagDefDao.class);
+               Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+               Mockito.when(xXTagDefDao.findByName(name)).thenReturn(xxTagDef);
+               
+               RangerTagDef result = rangerTagDefService.getTagDefByName(name);
+               Assert.assertNull(result);
+               
+               Mockito.verify(daoMgr).getXXTagDef();
+               Mockito.verify(xXTagDefDao).findByName(name);
+       }
+       
+       @Test
+       public void test8getTagDefsByServiceId(){
+               List<XXTagDef> xxTagDefs = new ArrayList<XXTagDef>();
+               XXTagDef xxTagDef = new XXTagDef();
+               xxTagDef.setId(id);
+               xxTagDef.setName(name);
+               xxTagDefs.add(xxTagDef);
+               
+               XXTagDefDao xXTagDefDao = Mockito.mock(XXTagDefDao.class);
+               Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+               
Mockito.when(xXTagDefDao.findByServiceId(serviceId)).thenReturn(xxTagDefs);
+               
+               List<XXTagAttributeDef> tagAttrDefList = new 
ArrayList<XXTagAttributeDef>();
+               XXTagAttributeDef xxTagAttributeDef = new XXTagAttributeDef();
+               xxTagAttributeDef.setId(id);
+               xxTagAttributeDef.setName(name);
+               tagAttrDefList.add(xxTagAttributeDef);
+               
+               XXTagAttributeDefDao xxTagAttributeDefDao = 
Mockito.mock(XXTagAttributeDefDao.class);
+               
+               
Mockito.when(daoMgr.getXXTagAttributeDef()).thenReturn(xxTagAttributeDefDao);
+               
Mockito.when(xxTagAttributeDefDao.findByTagDefId(xxTagDef.getId())).thenReturn(tagAttrDefList);
+               
+               List<RangerTagDef> result = 
rangerTagDefService.getTagDefsByServiceId(serviceId);
+               Assert.assertEquals(result.get(0).getId(), 
tagAttrDefList.get(0).getId());
+               Assert.assertEquals(result.get(0).getName(), 
tagAttrDefList.get(0).getName());
+               
+               Mockito.verify(daoMgr).getXXTagDef();
+               Mockito.verify(xXTagDefDao).findByServiceId(serviceId);
+               Mockito.verify(daoMgr).getXXTagAttributeDef();
+               
Mockito.verify(xxTagAttributeDefDao).findByTagDefId(xxTagDef.getId());
+       }
+       
+       
+       @Test
+       public void test9getTagDefsByServiceId(){
+               List<XXTagDef> xxTagDefs = new ArrayList<XXTagDef>();
+       
+               XXTagDefDao xXTagDefDao = Mockito.mock(XXTagDefDao.class);
+               Mockito.when(daoMgr.getXXTagDef()).thenReturn(xXTagDefDao);
+               
Mockito.when(xXTagDefDao.findByServiceId(serviceId)).thenReturn(xxTagDefs);
+               
+               List<RangerTagDef> result = 
rangerTagDefService.getTagDefsByServiceId(serviceId);
+               Assert.assertNotNull(result);
+               
+               Mockito.verify(daoMgr).getXXTagDef();
+               Mockito.verify(xXTagDefDao).findByServiceId(serviceId);
+       }
+       
+       @Test
+       public void test10getPopulatedViewObject(){
+               XXTagDef xxTagDef = new XXTagDef();
+               xxTagDef.setId(id);
+               xxTagDef.setName(name);
+               xxTagDef.setUpdateTime(new Date());
+               
+               List<XXTagAttributeDef> tagAttrDefList = new 
ArrayList<XXTagAttributeDef>();
+               XXTagAttributeDef xxTagAttributeDef = new XXTagAttributeDef();
+               xxTagAttributeDef.setId(id);
+               xxTagAttributeDef.setName(name);
+               tagAttrDefList.add(xxTagAttributeDef);
+               
+               XXTagAttributeDefDao xxTagAttributeDefDao = 
Mockito.mock(XXTagAttributeDefDao.class);
+               
+               
Mockito.when(daoMgr.getXXTagAttributeDef()).thenReturn(xxTagAttributeDefDao);
+               
Mockito.when(xxTagAttributeDefDao.findByTagDefId(xxTagDef.getId())).thenReturn(tagAttrDefList);
+               
+               RangerTagDef result = 
rangerTagDefService.getPopulatedViewObject(xxTagDef);
+               Assert.assertEquals(result.getId(), 
tagAttrDefList.get(0).getId());
+               Assert.assertEquals(result.getName(), 
tagAttrDefList.get(0).getName());
+               
+               Mockito.verify(daoMgr).getXXTagAttributeDef();
+               
Mockito.verify(xxTagAttributeDefDao).findByTagDefId(xxTagDef.getId());
+       }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/26bfd131/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefServiceBase.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefServiceBase.java
 
b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefServiceBase.java
new file mode 100644
index 0000000..803191c
--- /dev/null
+++ 
b/security-admin/src/test/java/org/apache/ranger/service/TestRangerTagDefServiceBase.java
@@ -0,0 +1,77 @@
+/*
+ * 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.entity.XXDBBase;
+import org.apache.ranger.entity.XXTagDef;
+import org.apache.ranger.plugin.model.RangerTagDef;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.junit.runner.RunWith;
+import org.junit.runners.MethodSorters;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
+
+@RunWith(MockitoJUnitRunner.class)
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestRangerTagDefServiceBase {
+       Long id = 1L;
+       String guid = "989898_01_1";
+       String name = "test";
+       Long version = 5L;
+       String type = "typo";
+       Long totalCount = 50L;
+
+       @InjectMocks
+       RangerTagDefService rangerTagDefService = new RangerTagDefService();
+       
+       @Mock
+       RangerDaoManager daoMgr;
+       
+       @Mock
+       RangerAuditFields<XXDBBase> rangerAuditFields;
+       
+       @Rule
+       public ExpectedException thrown = ExpectedException.none();
+       
+       @Test
+       public void test1mapViewToEntityBean() {
+               RangerTagDef rangerTagDef = new RangerTagDef();
+               rangerTagDef.setId(id);
+               rangerTagDef.setGuid(guid);
+               
+               XXTagDef xxTagDef = new XXTagDef();
+               xxTagDef.setId(id);
+               xxTagDef.setGuid(guid);
+               xxTagDef.setName(name);
+               xxTagDef.setVersion(version);
+               int operationContext = 1;
+
+               XXTagDef result = 
rangerTagDefService.mapViewToEntityBean(rangerTagDef,xxTagDef,operationContext);
+               Assert.assertNotNull(result);
+               Assert.assertEquals(result, xxTagDef);
+               Assert.assertEquals(result.getGuid(), xxTagDef.getGuid());
+               Assert.assertEquals(result.getName(), xxTagDef.getName());
+               Assert.assertEquals(result.getId(), xxTagDef.getId());
+               Assert.assertEquals(result.getVersion(), xxTagDef.getVersion());
+       }
+} 

Reply via email to