@Test public void testDeleteExists() { RoleDO delegatable = new RoleDO(); Long roleId = Long.valueOf(2); delegatable.setRoleId(roleId); delegatable.setName("delgatable"); Mockito.when(userRoleDAO.getUserRoleByUserIdAndRoleId(any(Long.class), any(Long.class))) .thenReturn(new UserRoleDO()); Mockito.when(roleDAO.findDelegatableRoles(any(Long.class), any(Long.class))) .thenReturn(Lists.newArrayList(delegatable)); userRoleService.delete(new ServiceContext(), Long.valueOf(1), roleId); Mockito.verify(userRoleDAO, times(1)).delete(any(UserRoleDO.class)); }
@Test(expected = AuthorizationException.class) public void testDeleteExistsNotDelegatable() { RoleDO notDelegatable = new RoleDO(); Long roleId = Long.valueOf(2); notDelegatable.setRoleId(roleId); notDelegatable.setName("notDelgatable"); Mockito.when(roleDAO.getById(Matchers.eq(roleId))).thenReturn(notDelegatable); Mockito.when(userRoleDAO.getUserRoleByUserIdAndRoleId(any(Long.class), any(Long.class))) .thenReturn(new UserRoleDO()); Mockito.when(roleDAO.findDelegatableRoles(any(Long.class), any(Long.class))) .thenReturn(Lists.<RoleDO>newArrayList()); try { userRoleService.delete(new ServiceContext(), Long.valueOf(1), roleId); } finally { Mockito.verify(userRoleDAO, Mockito.never()).delete(any(UserRoleDO.class)); } }