mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-07-23 23:45:08 +08:00
多模块重构 4:system 模块的调整,实现 social API~~
This commit is contained in:
@ -1,14 +1,14 @@
|
||||
package cn.iocoder.yudao.module.system.service.auth;
|
||||
|
||||
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.auth.AuthLoginReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum;
|
||||
import cn.iocoder.yudao.module.system.service.common.CaptchaService;
|
||||
import cn.iocoder.yudao.module.system.service.dept.PostService;
|
||||
import cn.iocoder.yudao.module.system.service.logger.LoginLogService;
|
||||
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
|
||||
import cn.iocoder.yudao.module.system.service.user.UserService;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.UserDO;
|
||||
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
||||
import cn.iocoder.yudao.module.system.service.social.SocialUserService;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.security.core.LoginUser;
|
||||
@ -37,14 +37,14 @@ import static org.junit.jupiter.api.Assertions.*;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
import static org.mockito.Mockito.*;
|
||||
|
||||
@Import(AuthServiceImpl.class)
|
||||
@Import(AdminAuthServiceImpl.class)
|
||||
public class AuthServiceImplTest extends BaseDbUnitTest {
|
||||
|
||||
@Resource
|
||||
private AuthServiceImpl authService;
|
||||
private AdminAuthServiceImpl authService;
|
||||
|
||||
@MockBean
|
||||
private UserService userService;
|
||||
private AdminUserService userService;
|
||||
@MockBean
|
||||
private PermissionService permissionService;
|
||||
@MockBean
|
||||
@ -72,7 +72,7 @@ public class AuthServiceImplTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
String username = randomString();
|
||||
// mock 方法
|
||||
UserDO user = randomPojo(UserDO.class, o -> o.setUsername(username));
|
||||
AdminUserDO user = randomPojo(AdminUserDO.class, o -> o.setUsername(username));
|
||||
when(userService.getUserByUsername(eq(username))).thenReturn(user);
|
||||
|
||||
// 调用
|
||||
@ -98,7 +98,7 @@ public class AuthServiceImplTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
Long userId = randomLongId();
|
||||
// mock 方法 01
|
||||
UserDO user = randomPojo(UserDO.class, o -> o.setId(userId));
|
||||
AdminUserDO user = randomPojo(AdminUserDO.class, o -> o.setId(userId));
|
||||
when(userService.getUser(eq(userId))).thenReturn(user);
|
||||
// mock 方法 02
|
||||
Set<Long> roleIds = randomSet(Long.class);
|
||||
|
@ -4,11 +4,11 @@ import cn.hutool.core.date.DateUtil;
|
||||
import cn.iocoder.yudao.framework.security.config.SecurityProperties;
|
||||
import cn.iocoder.yudao.framework.security.core.LoginUser;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.session.UserSessionPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.auth.SysUserSessionMapper;
|
||||
import cn.iocoder.yudao.module.system.service.logger.LoginLogService;
|
||||
import cn.iocoder.yudao.module.system.service.user.UserService;
|
||||
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.auth.SysUserSessionDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.UserDO;
|
||||
import cn.iocoder.yudao.module.system.dal.redis.auth.LoginUserRedisDAO;
|
||||
import cn.iocoder.yudao.module.system.enums.common.SysSexEnum;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
@ -52,7 +52,7 @@ public class UserSessionServiceImplTest extends BaseDbAndRedisUnitTest {
|
||||
private SysUserSessionMapper userSessionMapper;
|
||||
|
||||
@MockBean
|
||||
private UserService userService;
|
||||
private AdminUserService userService;
|
||||
@MockBean
|
||||
private LoginLogService loginLogService;
|
||||
@MockBean
|
||||
@ -64,7 +64,7 @@ public class UserSessionServiceImplTest extends BaseDbAndRedisUnitTest {
|
||||
@Test
|
||||
public void testGetUserSessionPage_success() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomPojo(UserDO.class, o -> {
|
||||
AdminUserDO dbUser = randomPojo(AdminUserDO.class, o -> {
|
||||
o.setSex(randomEle(SysSexEnum.values()).getSex());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
|
@ -8,13 +8,11 @@ import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.logger.vo.loginlog.LoginLogExportReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.logger.LoginLogMapper;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum;
|
||||
import cn.iocoder.yudao.framework.test.core.util.RandomUtils;
|
||||
import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.SysLoginLogTypeEnum;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.SysLoginResultEnum;
|
||||
import cn.iocoder.yudao.module.system.service.logger.dto.LoginLogCreateReqDTO;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum;
|
||||
import cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum;
|
||||
import cn.iocoder.yudao.module.system.api.logger.dto.LoginLogCreateReqDTO;
|
||||
import cn.iocoder.yudao.module.system.test.BaseDbUnitTest;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.context.annotation.Import;
|
||||
@ -41,20 +39,20 @@ public class LoginLogServiceImplTest extends BaseDbUnitTest {
|
||||
// 构造测试数据
|
||||
// 登录成功的
|
||||
SysLoginLogDO loginLogDO = RandomUtils.randomPojo(SysLoginLogDO.class, logDO -> {
|
||||
logDO.setLogType(RandomUtil.randomEle(LoginLogTypeEnum.values()).getType());
|
||||
logDO.setLogType(RandomUtil.randomEle(cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum.values()).getType());
|
||||
logDO.setTraceId(TracerUtils.getTraceId());
|
||||
logDO.setUserType(RandomUtil.randomEle(UserTypeEnum.values()).getValue());
|
||||
|
||||
logDO.setUserIp("192.168.199.16");
|
||||
logDO.setUsername("wangkai");
|
||||
logDO.setCreateTime(buildTime(2021, 3, 6));
|
||||
logDO.setResult(LoginResultEnum.SUCCESS.getResult());
|
||||
logDO.setResult(cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum.SUCCESS.getResult());
|
||||
});
|
||||
loginLogMapper.insert(loginLogDO);
|
||||
|
||||
// 下面几个都是不匹配的数据
|
||||
// 登录失败的
|
||||
loginLogMapper.insert(ObjectUtils.cloneIgnoreId(loginLogDO, logDO -> logDO.setResult(LoginResultEnum.CAPTCHA_CODE_ERROR.getResult())));
|
||||
loginLogMapper.insert(ObjectUtils.cloneIgnoreId(loginLogDO, logDO -> logDO.setResult(cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum.CAPTCHA_CODE_ERROR.getResult())));
|
||||
// 不同ip段的
|
||||
loginLogMapper.insert(ObjectUtils.cloneIgnoreId(loginLogDO, logDO -> logDO.setUserIp("192.168.128.18")));
|
||||
// 不同username
|
||||
@ -86,20 +84,20 @@ public class LoginLogServiceImplTest extends BaseDbUnitTest {
|
||||
|
||||
// 登录成功的
|
||||
SysLoginLogDO loginLogDO = RandomUtils.randomPojo(SysLoginLogDO.class, logDO -> {
|
||||
logDO.setLogType(RandomUtil.randomEle(LoginLogTypeEnum.values()).getType());
|
||||
logDO.setLogType(RandomUtil.randomEle(cn.iocoder.yudao.module.system.enums.logger.LoginLogTypeEnum.values()).getType());
|
||||
logDO.setTraceId(TracerUtils.getTraceId());
|
||||
logDO.setUserType(RandomUtil.randomEle(UserTypeEnum.values()).getValue());
|
||||
|
||||
logDO.setUserIp("192.168.111.16");
|
||||
logDO.setUsername("wangxiaokai");
|
||||
logDO.setCreateTime(buildTime(2021, 3, 6));
|
||||
logDO.setResult(LoginResultEnum.SUCCESS.getResult());
|
||||
logDO.setResult(cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum.SUCCESS.getResult());
|
||||
});
|
||||
loginLogMapper.insert(loginLogDO);
|
||||
|
||||
// 下面几个都是不匹配的数据
|
||||
// 登录失败的
|
||||
loginLogMapper.insert(ObjectUtils.cloneIgnoreId(loginLogDO, logDO -> logDO.setResult(LoginResultEnum.CAPTCHA_CODE_ERROR.getResult())));
|
||||
loginLogMapper.insert(ObjectUtils.cloneIgnoreId(loginLogDO, logDO -> logDO.setResult(cn.iocoder.yudao.module.system.enums.logger.LoginResultEnum.CAPTCHA_CODE_ERROR.getResult())));
|
||||
// 不同ip段的
|
||||
loginLogMapper.insert(ObjectUtils.cloneIgnoreId(loginLogDO, logDO -> logDO.setUserIp("192.168.128.18")));
|
||||
// 不同username
|
||||
@ -130,8 +128,8 @@ public class LoginLogServiceImplTest extends BaseDbUnitTest {
|
||||
LoginLogCreateReqDTO reqDTO = RandomUtils.randomPojo(LoginLogCreateReqDTO.class, vo -> {
|
||||
// 指定随机的范围,避免超出范围入库失败
|
||||
vo.setUserType(randomEle(UserTypeEnum.values()).getValue());
|
||||
vo.setLogType(randomEle(SysLoginLogTypeEnum.values()).getType());
|
||||
vo.setResult(randomEle(SysLoginResultEnum.values()).getResult());
|
||||
vo.setLogType(randomEle(LoginLogTypeEnum.values()).getType());
|
||||
vo.setResult(randomEle(LoginResultEnum.values()).getResult());
|
||||
vo.setTraceId(TracerUtils.getTraceId());
|
||||
});
|
||||
|
||||
|
@ -4,9 +4,9 @@ import cn.hutool.core.map.MapUtil;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogExportReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.logger.vo.operatelog.OperateLogPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.logger.OperateLogDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.logger.OperateLogMapper;
|
||||
import cn.iocoder.yudao.module.system.service.user.UserService;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.UserDO;
|
||||
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
|
||||
import cn.iocoder.yudao.module.system.enums.common.SysSexEnum;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.common.exception.enums.GlobalErrorCodeConstants;
|
||||
@ -43,7 +43,7 @@ public class OperateLogServiceImplTest extends BaseDbUnitTest {
|
||||
private OperateLogMapper operateLogMapper;
|
||||
|
||||
@MockBean
|
||||
private UserService userService;
|
||||
private AdminUserService userService;
|
||||
|
||||
@Test
|
||||
public void testCreateOperateLogAsync() throws InterruptedException, ExecutionException {
|
||||
@ -66,7 +66,7 @@ public class OperateLogServiceImplTest extends BaseDbUnitTest {
|
||||
public void testGetOperateLogPage() {
|
||||
// 构造测试数据
|
||||
// 先构造用户
|
||||
UserDO user = RandomUtils.randomPojo(UserDO.class, o -> {
|
||||
AdminUserDO user = RandomUtils.randomPojo(AdminUserDO.class, o -> {
|
||||
o.setNickname("wangkai");
|
||||
o.setSex(SysSexEnum.MALE.getSex());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
@ -117,7 +117,7 @@ public class OperateLogServiceImplTest extends BaseDbUnitTest {
|
||||
public void testGetOperateLogs() {
|
||||
// 构造测试数据
|
||||
// 先构造用户
|
||||
UserDO user = RandomUtils.randomPojo(UserDO.class, o -> {
|
||||
AdminUserDO user = RandomUtils.randomPojo(AdminUserDO.class, o -> {
|
||||
o.setNickname("wangkai");
|
||||
o.setSex(SysSexEnum.MALE.getSex());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
|
@ -7,7 +7,7 @@ import cn.iocoder.yudao.module.system.controller.admin.permission.vo.menu.MenuCr
|
||||
import cn.iocoder.yudao.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.permission.vo.menu.MenuUpdateReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.SysMenuMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.MenuMapper;
|
||||
import cn.iocoder.yudao.module.system.enums.permission.MenuTypeEnum;
|
||||
import cn.iocoder.yudao.module.system.mq.producer.permission.MenuProducer;
|
||||
import cn.iocoder.yudao.framework.common.util.spring.SpringAopUtils;
|
||||
@ -41,7 +41,7 @@ public class MenuServiceTest extends BaseDbUnitTest {
|
||||
private MenuProducer sysMenuProducer;
|
||||
|
||||
@Resource
|
||||
private SysMenuMapper menuMapper;
|
||||
private MenuMapper menuMapper;
|
||||
|
||||
@Test
|
||||
public void testInitLocalCache_success() throws Exception {
|
||||
|
@ -2,11 +2,11 @@ package cn.iocoder.yudao.module.system.service.permission;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.SysRoleDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleMenuDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.SysUserRoleDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.SysRoleMenuMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.SysUserRoleMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.UserRoleDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.RoleMenuMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.UserRoleMapper;
|
||||
import cn.iocoder.yudao.module.system.mq.producer.permission.PermissionProducer;
|
||||
import cn.iocoder.yudao.module.system.service.dept.DeptService;
|
||||
import cn.iocoder.yudao.framework.datapermission.core.dept.service.dto.DeptDataPermissionRespDTO;
|
||||
@ -37,9 +37,9 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
private PermissionServiceImpl permissionService;
|
||||
|
||||
@Resource
|
||||
private SysRoleMenuMapper roleMenuMapper;
|
||||
private RoleMenuMapper roleMenuMapper;
|
||||
@Resource
|
||||
private SysUserRoleMapper userRoleMapper;
|
||||
private UserRoleMapper userRoleMapper;
|
||||
|
||||
@MockBean
|
||||
private RoleService roleService;
|
||||
@ -56,9 +56,9 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
Long roleId = randomLongId();
|
||||
// mock 数据 UserRole
|
||||
SysUserRoleDO userRoleDO01 = randomPojo(SysUserRoleDO.class, o -> o.setRoleId(roleId)); // 被删除
|
||||
UserRoleDO userRoleDO01 = randomPojo(UserRoleDO.class, o -> o.setRoleId(roleId)); // 被删除
|
||||
userRoleMapper.insert(userRoleDO01);
|
||||
SysUserRoleDO userRoleDO02 = randomPojo(SysUserRoleDO.class); // 不被删除
|
||||
UserRoleDO userRoleDO02 = randomPojo(UserRoleDO.class); // 不被删除
|
||||
userRoleMapper.insert(userRoleDO02);
|
||||
// mock 数据 RoleMenu
|
||||
RoleMenuDO roleMenuDO01 = randomPojo(RoleMenuDO.class, o -> o.setRoleId(roleId)); // 被删除
|
||||
@ -73,7 +73,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
assertEquals(1, dbRoleMenus.size());
|
||||
assertPojoEquals(dbRoleMenus.get(0), roleMenuDO02);
|
||||
// 断言数据 UserRoleDO
|
||||
List<SysUserRoleDO> dbUserRoles = userRoleMapper.selectList();
|
||||
List<UserRoleDO> dbUserRoles = userRoleMapper.selectList();
|
||||
assertEquals(1, dbUserRoles.size());
|
||||
assertPojoEquals(dbUserRoles.get(0), userRoleDO02);
|
||||
// 断言调用
|
||||
@ -105,15 +105,15 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
Long userId = randomLongId();
|
||||
// mock 数据
|
||||
SysUserRoleDO userRoleDO01 = randomPojo(SysUserRoleDO.class, o -> o.setUserId(userId)); // 被删除
|
||||
UserRoleDO userRoleDO01 = randomPojo(UserRoleDO.class, o -> o.setUserId(userId)); // 被删除
|
||||
userRoleMapper.insert(userRoleDO01);
|
||||
SysUserRoleDO userRoleDO02 = randomPojo(SysUserRoleDO.class); // 不被删除
|
||||
UserRoleDO userRoleDO02 = randomPojo(UserRoleDO.class); // 不被删除
|
||||
userRoleMapper.insert(userRoleDO02);
|
||||
|
||||
// 调用
|
||||
permissionService.processUserDeleted(userId);
|
||||
// 断言数据
|
||||
List<SysUserRoleDO> dbUserRoles = userRoleMapper.selectList();
|
||||
List<UserRoleDO> dbUserRoles = userRoleMapper.selectList();
|
||||
assertEquals(1, dbUserRoles.size());
|
||||
assertPojoEquals(dbUserRoles.get(0), userRoleDO02);
|
||||
}
|
||||
@ -137,7 +137,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
LoginUser loginUser = randomPojo(LoginUser.class);
|
||||
// mock 方法
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> o.setDataScope(DataScopeEnum.ALL.getScope()));
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> o.setDataScope(DataScopeEnum.ALL.getScope()));
|
||||
when(roleService.getRolesFromCache(same(loginUser.getRoleIds()))).thenReturn(singletonList(roleDO));
|
||||
|
||||
// 调用
|
||||
@ -154,7 +154,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
LoginUser loginUser = randomPojo(LoginUser.class);
|
||||
// mock 方法
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> o.setDataScope(DataScopeEnum.DEPT_CUSTOM.getScope()));
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> o.setDataScope(DataScopeEnum.DEPT_CUSTOM.getScope()));
|
||||
when(roleService.getRolesFromCache(same(loginUser.getRoleIds()))).thenReturn(singletonList(roleDO));
|
||||
|
||||
// 调用
|
||||
@ -173,7 +173,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
LoginUser loginUser = randomPojo(LoginUser.class);
|
||||
// mock 方法
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> o.setDataScope(DataScopeEnum.DEPT_ONLY.getScope()));
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> o.setDataScope(DataScopeEnum.DEPT_ONLY.getScope()));
|
||||
when(roleService.getRolesFromCache(same(loginUser.getRoleIds()))).thenReturn(singletonList(roleDO));
|
||||
|
||||
// 调用
|
||||
@ -191,7 +191,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
LoginUser loginUser = randomPojo(LoginUser.class);
|
||||
// mock 方法(角色)
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> o.setDataScope(DataScopeEnum.DEPT_AND_CHILD.getScope()));
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> o.setDataScope(DataScopeEnum.DEPT_AND_CHILD.getScope()));
|
||||
when(roleService.getRolesFromCache(same(loginUser.getRoleIds()))).thenReturn(singletonList(roleDO));
|
||||
// mock 方法(部门)
|
||||
SysDeptDO deptDO = randomPojo(SysDeptDO.class);
|
||||
@ -213,7 +213,7 @@ public class PermissionServiceTest extends BaseDbUnitTest {
|
||||
// 准备参数
|
||||
LoginUser loginUser = randomPojo(LoginUser.class);
|
||||
// mock 方法
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> o.setDataScope(DataScopeEnum.SELF.getScope()));
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> o.setDataScope(DataScopeEnum.SELF.getScope()));
|
||||
when(roleService.getRolesFromCache(same(loginUser.getRoleIds()))).thenReturn(singletonList(roleDO));
|
||||
|
||||
// 调用
|
||||
|
@ -7,8 +7,8 @@ import cn.iocoder.yudao.framework.security.core.enums.DataScopeEnum;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.permission.vo.role.RoleCreateReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.permission.vo.role.RolePageReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.permission.vo.role.RoleUpdateReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.SysRoleDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.SysRoleMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.permission.RoleMapper;
|
||||
import cn.iocoder.yudao.module.system.enums.permission.RoleTypeEnum;
|
||||
import cn.iocoder.yudao.module.system.mq.producer.permission.RoleProducer;
|
||||
import cn.iocoder.yudao.framework.common.util.spring.SpringAopUtils;
|
||||
@ -36,7 +36,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
private RoleServiceImpl sysRoleService;
|
||||
|
||||
@Resource
|
||||
private SysRoleMapper roleMapper;
|
||||
private RoleMapper roleMapper;
|
||||
|
||||
@MockBean
|
||||
private PermissionService sysPermissionService;
|
||||
@ -46,9 +46,9 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testInitLocalCache_success() throws Exception {
|
||||
SysRoleDO roleDO1 = createRoleDO("role1", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO1 = createRoleDO("role1", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO1);
|
||||
SysRoleDO roleDO2 = createRoleDO("role2", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO2 = createRoleDO("role2", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO2);
|
||||
|
||||
//调用
|
||||
@ -58,7 +58,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
//获取代理对象
|
||||
RoleServiceImpl target = (RoleServiceImpl) SpringAopUtils.getTarget(sysRoleService);
|
||||
|
||||
Map<Long, SysRoleDO> roleCache = (Map<Long, SysRoleDO>) BeanUtil.getFieldValue(target, "roleCache");
|
||||
Map<Long, RoleDO> roleCache = (Map<Long, RoleDO>) BeanUtil.getFieldValue(target, "roleCache");
|
||||
assertPojoEquals(roleDO1, roleCache.get(roleDO1.getId()));
|
||||
assertPojoEquals(roleDO2, roleCache.get(roleDO2.getId()));
|
||||
|
||||
@ -79,7 +79,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
//断言
|
||||
assertNotNull(roleId);
|
||||
SysRoleDO roleDO = roleMapper.selectById(roleId);
|
||||
RoleDO roleDO = roleMapper.selectById(roleId);
|
||||
assertPojoEquals(reqVO, roleDO);
|
||||
|
||||
verify(sysRoleProducer).sendRoleRefreshMessage();
|
||||
@ -87,7 +87,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testUpdateRole_success() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO);
|
||||
Long roleId = roleDO.getId();
|
||||
|
||||
@ -102,7 +102,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
sysRoleService.updateRole(reqVO);
|
||||
|
||||
//断言
|
||||
SysRoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
RoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
assertPojoEquals(reqVO, newRoleDO);
|
||||
|
||||
verify(sysRoleProducer).sendRoleRefreshMessage();
|
||||
@ -110,7 +110,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testUpdateRoleStatus_success() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, CommonStatusEnum.ENABLE.getStatus());
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, CommonStatusEnum.ENABLE.getStatus());
|
||||
roleMapper.insert(roleDO);
|
||||
Long roleId = roleDO.getId();
|
||||
|
||||
@ -118,7 +118,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
sysRoleService.updateRoleStatus(roleId, CommonStatusEnum.DISABLE.getStatus());
|
||||
|
||||
//断言
|
||||
SysRoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
RoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
assertEquals(CommonStatusEnum.DISABLE.getStatus(), newRoleDO.getStatus());
|
||||
|
||||
verify(sysRoleProducer).sendRoleRefreshMessage();
|
||||
@ -126,7 +126,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testUpdateRoleDataScope_success() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO);
|
||||
Long roleId = roleDO.getId();
|
||||
|
||||
@ -135,7 +135,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
sysRoleService.updateRoleDataScope(roleId, DataScopeEnum.DEPT_CUSTOM.getScope(), deptIdSet);
|
||||
|
||||
//断言
|
||||
SysRoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
RoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
assertEquals(DataScopeEnum.DEPT_CUSTOM.getScope(), newRoleDO.getDataScope());
|
||||
|
||||
Set<Long> newDeptIdSet = newRoleDO.getDataScopeDeptIds();
|
||||
@ -147,7 +147,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testDeleteRole_success() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO);
|
||||
Long roleId = roleDO.getId();
|
||||
|
||||
@ -155,7 +155,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
sysRoleService.deleteRole(roleId);
|
||||
|
||||
//断言
|
||||
SysRoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
RoleDO newRoleDO = roleMapper.selectById(roleId);
|
||||
assertNull(newRoleDO);
|
||||
|
||||
verify(sysRoleProducer).sendRoleRefreshMessage();
|
||||
@ -163,22 +163,22 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testGetRoles_success() {
|
||||
Map<Long, SysRoleDO> idRoleMap = new HashMap<>();
|
||||
Map<Long, RoleDO> idRoleMap = new HashMap<>();
|
||||
// 验证查询状态为1的角色
|
||||
SysRoleDO roleDO1 = createRoleDO("role1", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1);
|
||||
RoleDO roleDO1 = createRoleDO("role1", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1);
|
||||
roleMapper.insert(roleDO1);
|
||||
idRoleMap.put(roleDO1.getId(), roleDO1);
|
||||
|
||||
SysRoleDO roleDO2 = createRoleDO("role2", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1);
|
||||
RoleDO roleDO2 = createRoleDO("role2", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1);
|
||||
roleMapper.insert(roleDO2);
|
||||
idRoleMap.put(roleDO2.getId(), roleDO2);
|
||||
|
||||
// 以下是排除的角色
|
||||
SysRoleDO roleDO3 = createRoleDO("role3", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 2);
|
||||
RoleDO roleDO3 = createRoleDO("role3", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 2);
|
||||
roleMapper.insert(roleDO3);
|
||||
|
||||
//调用
|
||||
List<SysRoleDO> roles = sysRoleService.getRoles(Arrays.asList(1));
|
||||
List<RoleDO> roles = sysRoleService.getRoles(Arrays.asList(1));
|
||||
|
||||
//断言
|
||||
assertEquals(2, roles.size());
|
||||
@ -188,10 +188,10 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testGetRolePage_success() {
|
||||
Map<Long, SysRoleDO> idRoleMap = new HashMap<>();
|
||||
Map<Long, RoleDO> idRoleMap = new HashMap<>();
|
||||
// 验证名称包含"role", 状态为1,code为"code"的角色
|
||||
// 第一页
|
||||
SysRoleDO roleDO = createRoleDO("role1", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1, "code");
|
||||
RoleDO roleDO = createRoleDO("role1", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1, "code");
|
||||
roleMapper.insert(roleDO);
|
||||
idRoleMap.put(roleDO.getId(), roleDO);
|
||||
// 第二页
|
||||
@ -214,7 +214,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
o.setBeginTime(null);
|
||||
o.setEndTime(null);
|
||||
});
|
||||
PageResult<SysRoleDO> result = sysRoleService.getRolePage(reqVO);
|
||||
PageResult<RoleDO> result = sysRoleService.getRolePage(reqVO);
|
||||
assertEquals(2, result.getTotal());
|
||||
result.getList().stream().forEach(r -> assertPojoEquals(idRoleMap.get(r.getId()), r));
|
||||
}
|
||||
@ -226,7 +226,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testCheckDuplicateRole_nameDuplicate() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO);
|
||||
|
||||
String duplicateName = "role_name";
|
||||
@ -236,7 +236,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testCheckDuplicateRole_codeDuplicate() {
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> {
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> {
|
||||
o.setName("role_999");
|
||||
o.setCode("code");
|
||||
o.setType(RoleTypeEnum.CUSTOM.getType());
|
||||
@ -253,7 +253,7 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testCheckUpdateRole_success() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.CUSTOM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO);
|
||||
Long roleId = roleDO.getId();
|
||||
|
||||
@ -267,27 +267,27 @@ public class RoleServiceTest extends BaseDbUnitTest {
|
||||
|
||||
@Test
|
||||
public void testCheckUpdateRole_systemRoleCanNotBeUpdate() {
|
||||
SysRoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.SYSTEM, DataScopeEnum.ALL);
|
||||
RoleDO roleDO = createRoleDO("role_name", RoleTypeEnum.SYSTEM, DataScopeEnum.ALL);
|
||||
roleMapper.insert(roleDO);
|
||||
Long roleId = roleDO.getId();
|
||||
|
||||
assertServiceException(() -> sysRoleService.checkUpdateRole(roleId), ROLE_CAN_NOT_UPDATE_SYSTEM_TYPE_ROLE);
|
||||
}
|
||||
|
||||
private SysRoleDO createRoleDO(String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status) {
|
||||
private RoleDO createRoleDO(String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status) {
|
||||
return createRoleDO( name, typeEnum, scopeEnum, status, randomString());
|
||||
}
|
||||
|
||||
private SysRoleDO createRoleDO(String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status, String code) {
|
||||
private RoleDO createRoleDO(String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status, String code) {
|
||||
return createRoleDO(null, name, typeEnum, scopeEnum, status, code);
|
||||
}
|
||||
|
||||
private SysRoleDO createRoleDO(String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum) {
|
||||
private RoleDO createRoleDO(String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum) {
|
||||
return createRoleDO(null, name, typeEnum, scopeEnum, randomCommonStatus(), randomString());
|
||||
}
|
||||
|
||||
private SysRoleDO createRoleDO(Long id, String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status, String code) {
|
||||
SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> {
|
||||
private RoleDO createRoleDO(Long id, String name, RoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status, String code) {
|
||||
RoleDO roleDO = randomPojo(RoleDO.class, o -> {
|
||||
o.setId(id);
|
||||
o.setName(name);
|
||||
o.setType(typeEnum.getType());
|
||||
|
@ -4,7 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannelCreateReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannelPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.channel.SmsChannelUpdateReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.sms.SysSmsChannelMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.sms.SmsChannelMapper;
|
||||
import cn.iocoder.yudao.module.system.mq.producer.sms.SmsProducer;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsChannelDO;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
@ -39,7 +39,7 @@ public class SmsChannelServiceTest extends BaseDbUnitTest {
|
||||
private SmsChannelServiceImpl smsChannelService;
|
||||
|
||||
@Resource
|
||||
private SysSmsChannelMapper smsChannelMapper;
|
||||
private SmsChannelMapper smsChannelMapper;
|
||||
|
||||
@MockBean
|
||||
private SmsClientFactory smsClientFactory;
|
||||
|
@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogExportReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.log.SmsLogPageReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsTemplateDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.sms.SysSmsLogMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.sms.SmsLogMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsLogDO;
|
||||
import cn.iocoder.yudao.module.system.enums.sms.SysSmsReceiveStatusEnum;
|
||||
import cn.iocoder.yudao.module.system.enums.sms.SysSmsSendStatusEnum;
|
||||
@ -39,7 +39,7 @@ public class SmsLogServiceTest extends BaseDbUnitTest {
|
||||
private SmsLogServiceImpl smsLogService;
|
||||
|
||||
@Resource
|
||||
private SysSmsLogMapper smsLogMapper;
|
||||
private SmsLogMapper smsLogMapper;
|
||||
|
||||
@Test
|
||||
public void testGetSmsLogPage() {
|
||||
|
@ -4,7 +4,7 @@ import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTempla
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTemplateExportReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTemplatePageReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.sms.vo.template.SmsTemplateUpdateReqVO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.sms.SysSmsTemplateMapper;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.sms.SmsTemplateMapper;
|
||||
import cn.iocoder.yudao.module.system.mq.producer.sms.SmsProducer;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsChannelDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.sms.SysSmsTemplateDO;
|
||||
@ -49,7 +49,7 @@ public class SmsTemplateServiceTest extends BaseDbUnitTest {
|
||||
private SmsTemplateServiceImpl smsTemplateService;
|
||||
|
||||
@Resource
|
||||
private SysSmsTemplateMapper smsTemplateMapper;
|
||||
private SmsTemplateMapper smsTemplateMapper;
|
||||
|
||||
@MockBean
|
||||
private SmsChannelService smsChannelService;
|
||||
|
@ -23,9 +23,9 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static cn.hutool.core.util.RandomUtil.randomEle;
|
||||
import static cn.iocoder.yudao.module.system.enums.SysErrorCodeConstants.*;
|
||||
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
|
||||
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*;
|
||||
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.*;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
import static org.mockito.Mockito.*;
|
||||
@ -33,7 +33,7 @@ import static org.mockito.Mockito.*;
|
||||
public class SysSmsSendServiceTest extends BaseMockitoUnitTest {
|
||||
|
||||
@InjectMocks
|
||||
private SysSmsSendServiceImpl smsService;
|
||||
private SmsSendServiceImpl smsService;
|
||||
|
||||
@Mock
|
||||
private SmsTemplateService smsTemplateService;
|
||||
|
@ -23,7 +23,7 @@ import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
@Import({SocialUserServiceImpl.class, SocialAuthUserRedisDAO.class})
|
||||
public class SocialUsererviceTest extends BaseDbAndRedisUnitTest {
|
||||
public class SocialUserServiceTest extends BaseDbAndRedisUnitTest {
|
||||
|
||||
@Resource
|
||||
private SocialUserServiceImpl socialService;
|
||||
@ -47,7 +47,7 @@ public class SocialUsererviceTest extends BaseDbAndRedisUnitTest {
|
||||
// mock 方法
|
||||
|
||||
// 调用
|
||||
socialService.bindSocialUser(userId, type, authUser, UserTypeEnum.ADMIN);
|
||||
socialService.bindSocialUser(userId, UserTypeEnum.ADMIN.getValue(), type, authUser);
|
||||
// 断言
|
||||
List<SysSocialUserDO> socialUsers = socialUserMapper.selectList("user_id", userId);
|
||||
assertEquals(1, socialUsers.size());
|
||||
@ -72,7 +72,7 @@ public class SocialUsererviceTest extends BaseDbAndRedisUnitTest {
|
||||
// mock 方法
|
||||
|
||||
// 调用
|
||||
socialService.bindSocialUser(userId, type, authUser, UserTypeEnum.ADMIN);
|
||||
socialService.bindSocialUser(userId, UserTypeEnum.ADMIN.getValue(), type, authUser);
|
||||
// 断言
|
||||
List<SysSocialUserDO> socialUsers = socialUserMapper.selectList("user_id", userId);
|
||||
assertEquals(1, socialUsers.size());
|
||||
@ -97,7 +97,7 @@ public class SocialUsererviceTest extends BaseDbAndRedisUnitTest {
|
||||
// mock 方法
|
||||
|
||||
// 调用
|
||||
socialService.bindSocialUser(userId, type, authUser, UserTypeEnum.ADMIN);
|
||||
socialService.bindSocialUser(userId, UserTypeEnum.ADMIN.getValue(), type, authUser);
|
||||
// 断言
|
||||
List<SysSocialUserDO> socialUsers = socialUserMapper.selectList("user_id", userId);
|
||||
assertEquals(1, socialUsers.size());
|
||||
@ -134,7 +134,7 @@ public class SocialUsererviceTest extends BaseDbAndRedisUnitTest {
|
||||
String newUnionId = oldSocialUser.getUnionId();
|
||||
|
||||
// 调用
|
||||
socialService.unbindOldSocialUser(userId, type, newUnionId, UserTypeEnum.ADMIN);
|
||||
socialService.unbindOldSocialUser(userId, UserTypeEnum.ADMIN.getValue(), type, newUnionId);
|
||||
// 断言
|
||||
assertEquals(1L, socialUserMapper.selectCount(null).longValue());
|
||||
}
|
||||
@ -157,7 +157,7 @@ public class SocialUsererviceTest extends BaseDbAndRedisUnitTest {
|
||||
String newUnionId = randomString(10);
|
||||
|
||||
// 调用
|
||||
socialService.unbindOldSocialUser(userId, type, newUnionId, UserTypeEnum.ADMIN);
|
||||
socialService.unbindOldSocialUser(userId, UserTypeEnum.ADMIN.getValue(), type, newUnionId);
|
||||
// 断言
|
||||
assertEquals(0L, socialUserMapper.selectCount(null).longValue());
|
||||
}
|
@ -1,25 +1,23 @@
|
||||
package cn.iocoder.yudao.module.system.service.user;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.*;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.user.UserMapper;
|
||||
import cn.iocoder.yudao.module.system.service.dept.DeptService;
|
||||
import cn.iocoder.yudao.module.system.service.dept.PostService;
|
||||
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
|
||||
import cn.iocoder.yudao.coreservice.modules.infra.service.file.InfFileCoreService;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.UserDO;
|
||||
import cn.iocoder.yudao.module.system.enums.common.SysSexEnum;
|
||||
import cn.iocoder.yudao.module.system.service.dept.SysDeptCoreService;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils;
|
||||
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
||||
import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
|
||||
import cn.iocoder.yudao.module.system.controller.admin.user.vo.user.*;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysDeptDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.dept.SysPostDO;
|
||||
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import cn.iocoder.yudao.module.system.dal.mysql.user.AdminUserMapper;
|
||||
import cn.iocoder.yudao.module.system.enums.common.SysSexEnum;
|
||||
import cn.iocoder.yudao.module.system.service.dept.DeptService;
|
||||
import cn.iocoder.yudao.module.system.service.dept.PostService;
|
||||
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
|
||||
import cn.iocoder.yudao.module.system.test.BaseDbUnitTest;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.stubbing.Answer;
|
||||
@ -29,36 +27,34 @@ import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.util.*;
|
||||
import java.util.List;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import static cn.hutool.core.util.RandomUtil.randomBytes;
|
||||
import static cn.hutool.core.util.RandomUtil.randomEle;
|
||||
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.*;
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.buildTime;
|
||||
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals;
|
||||
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
|
||||
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*;
|
||||
import static cn.iocoder.yudao.module.system.enums.ErrorCodeConstants.*;
|
||||
import static org.assertj.core.util.Lists.newArrayList;
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
import static org.mockito.ArgumentMatchers.*;
|
||||
import static org.mockito.Mockito.*;
|
||||
|
||||
@Import(UserServiceImpl.class)
|
||||
@Import(AdminUserServiceImpl.class)
|
||||
public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
|
||||
@Resource
|
||||
private UserServiceImpl userService;
|
||||
private AdminUserServiceImpl userService;
|
||||
|
||||
@Resource
|
||||
private UserMapper userMapper;
|
||||
private AdminUserMapper userMapper;
|
||||
|
||||
@MockBean
|
||||
private DeptService deptService;
|
||||
|
||||
@MockBean
|
||||
private SysDeptCoreService deptCoreService;
|
||||
@MockBean
|
||||
private PostService postService;
|
||||
@MockBean
|
||||
@ -80,7 +76,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
o.setId(reqVO.getDeptId());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
when(deptCoreService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
when(deptService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
// mock postService 的方法
|
||||
List<SysPostDO> posts = CollectionUtils.convertList(reqVO.getPostIds(), postId ->
|
||||
randomPojo(SysPostDO.class, o -> {
|
||||
@ -94,7 +90,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
Long userId = userService.createUser(reqVO);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(userId);
|
||||
AdminUserDO user = userMapper.selectById(userId);
|
||||
assertPojoEquals(reqVO, user, "password");
|
||||
assertEquals("yudaoyuanma", user.getPassword());
|
||||
assertEquals(CommonStatusEnum.ENABLE.getStatus(), user.getStatus());
|
||||
@ -103,7 +99,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testUpdateUser_success() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
UserUpdateReqVO reqVO = randomPojo(UserUpdateReqVO.class, o -> {
|
||||
@ -116,7 +112,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
o.setId(reqVO.getDeptId());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
when(deptCoreService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
when(deptService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
// mock postService 的方法
|
||||
List<SysPostDO> posts = CollectionUtils.convertList(reqVO.getPostIds(), postId ->
|
||||
randomPojo(SysPostDO.class, o -> {
|
||||
@ -128,14 +124,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
userService.updateUser(reqVO);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(reqVO.getId());
|
||||
AdminUserDO user = userMapper.selectById(reqVO.getId());
|
||||
assertPojoEquals(reqVO, user);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateUserProfile_success() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
Long userId = dbUser.getId();
|
||||
@ -147,14 +143,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
userService.updateUserProfile(userId, reqVO);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(userId);
|
||||
AdminUserDO user = userMapper.selectById(userId);
|
||||
assertPojoEquals(reqVO, user);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateUserPassword_success() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO(o -> o.setPassword("encode:yudao"));
|
||||
AdminUserDO dbUser = randomSysUserDO(o -> o.setPassword("encode:yudao"));
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
Long userId = dbUser.getId();
|
||||
@ -170,14 +166,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
userService.updateUserPassword(userId, reqVO);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(userId);
|
||||
AdminUserDO user = userMapper.selectById(userId);
|
||||
assertEquals("encode:yuanma", user.getPassword());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateUserAvatar_success() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
Long userId = dbUser.getId();
|
||||
@ -190,14 +186,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
userService.updateUserAvatar(userId, avatarFile);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(userId);
|
||||
AdminUserDO user = userMapper.selectById(userId);
|
||||
assertEquals(avatar, user.getAvatar());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateUserPassword02_success() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
Long userId = dbUser.getId();
|
||||
@ -209,14 +205,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
userService.updateUserPassword(userId, password);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(userId);
|
||||
AdminUserDO user = userMapper.selectById(userId);
|
||||
assertEquals("encode:" + password, user.getPassword());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateUserStatus() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
Long userId = dbUser.getId();
|
||||
@ -225,14 +221,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// 调用
|
||||
userService.updateUserStatus(userId, status);
|
||||
// 断言
|
||||
UserDO user = userMapper.selectById(userId);
|
||||
AdminUserDO user = userMapper.selectById(userId);
|
||||
assertEquals(status, user.getStatus());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDeleteUser_success(){
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
Long userId = dbUser.getId();
|
||||
@ -248,7 +244,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testGetUserPage() {
|
||||
// mock 数据
|
||||
UserDO dbUser = initGetUserPageData();
|
||||
AdminUserDO dbUser = initGetUserPageData();
|
||||
// 准备参数
|
||||
UserPageReqVO reqVO = new UserPageReqVO();
|
||||
reqVO.setUsername("yudao");
|
||||
@ -262,7 +258,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
when(deptService.getDeptsByParentIdFromCache(eq(reqVO.getDeptId()), eq(true))).thenReturn(deptList);
|
||||
|
||||
// 调用
|
||||
PageResult<UserDO> pageResult = userService.getUserPage(reqVO);
|
||||
PageResult<AdminUserDO> pageResult = userService.getUserPage(reqVO);
|
||||
// 断言
|
||||
assertEquals(1, pageResult.getTotal());
|
||||
assertEquals(1, pageResult.getList().size());
|
||||
@ -272,7 +268,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testGetUsers() {
|
||||
// mock 数据
|
||||
UserDO dbUser = initGetUserPageData();
|
||||
AdminUserDO dbUser = initGetUserPageData();
|
||||
// 准备参数
|
||||
UserExportReqVO reqVO = new UserExportReqVO();
|
||||
reqVO.setUsername("yudao");
|
||||
@ -286,7 +282,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
when(deptService.getDeptsByParentIdFromCache(eq(reqVO.getDeptId()), eq(true))).thenReturn(deptList);
|
||||
|
||||
// 调用
|
||||
List<UserDO> list = userService.getUsers(reqVO);
|
||||
List<AdminUserDO> list = userService.getUsers(reqVO);
|
||||
// 断言
|
||||
assertEquals(1, list.size());
|
||||
assertPojoEquals(dbUser, list.get(0));
|
||||
@ -295,9 +291,9 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
/**
|
||||
* 初始化 getUserPage 方法的测试数据
|
||||
*/
|
||||
private UserDO initGetUserPageData() {
|
||||
private AdminUserDO initGetUserPageData() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO(o -> { // 等会查询到
|
||||
AdminUserDO dbUser = randomSysUserDO(o -> { // 等会查询到
|
||||
o.setUsername("yudaoyuanma");
|
||||
o.setMobile("15601691300");
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
@ -351,7 +347,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
o.setId(importUser.getDeptId());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
when(deptCoreService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
when(deptService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
// mock passwordEncoder 的方法
|
||||
when(passwordEncoder.encode(eq("yudaoyuanma"))).thenReturn("java");
|
||||
|
||||
@ -359,7 +355,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
UserImportRespVO respVO = userService.importUsers(newArrayList(importUser), true);
|
||||
// 断言
|
||||
assertEquals(1, respVO.getCreateUsernames().size());
|
||||
UserDO user = userMapper.selectByUsername(respVO.getCreateUsernames().get(0));
|
||||
AdminUserDO user = userMapper.selectByUsername(respVO.getCreateUsernames().get(0));
|
||||
assertPojoEquals(importUser, user);
|
||||
assertEquals("java", user.getPassword());
|
||||
assertEquals(0, respVO.getUpdateUsernames().size());
|
||||
@ -372,7 +368,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testImportUsers_03() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
UserImportExcelVO importUser = randomPojo(UserImportExcelVO.class, o -> {
|
||||
@ -385,7 +381,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
o.setId(importUser.getDeptId());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
when(deptCoreService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
when(deptService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
|
||||
// 调用
|
||||
UserImportRespVO respVO = userService.importUsers(newArrayList(importUser), false);
|
||||
@ -402,7 +398,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testImportUsers_04() {
|
||||
// mock 数据
|
||||
UserDO dbUser = randomSysUserDO();
|
||||
AdminUserDO dbUser = randomSysUserDO();
|
||||
userMapper.insert(dbUser);
|
||||
// 准备参数
|
||||
UserImportExcelVO importUser = randomPojo(UserImportExcelVO.class, o -> {
|
||||
@ -415,14 +411,14 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
o.setId(importUser.getDeptId());
|
||||
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
});
|
||||
when(deptCoreService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
when(deptService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
|
||||
// 调用
|
||||
UserImportRespVO respVO = userService.importUsers(newArrayList(importUser), true);
|
||||
// 断言
|
||||
assertEquals(0, respVO.getCreateUsernames().size());
|
||||
assertEquals(1, respVO.getUpdateUsernames().size());
|
||||
UserDO user = userMapper.selectByUsername(respVO.getUpdateUsernames().get(0));
|
||||
AdminUserDO user = userMapper.selectByUsername(respVO.getUpdateUsernames().get(0));
|
||||
assertPojoEquals(importUser, user);
|
||||
assertEquals(0, respVO.getFailureUsernames().size());
|
||||
}
|
||||
@ -507,51 +503,6 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
USER_MOBILE_EXISTS);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCheckDeptEnable_notFound() {
|
||||
assertServiceException(() -> userService.checkDeptEnable(randomLongId()),
|
||||
DEPT_NOT_FOUND);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCheckDeptEnable_notEnable() {
|
||||
// 准备参数
|
||||
Long deptId = randomLongId();
|
||||
// mock deptService 的方法
|
||||
SysDeptDO dept = randomPojo(SysDeptDO.class, o -> {
|
||||
o.setId(deptId);
|
||||
o.setStatus(CommonStatusEnum.DISABLE.getStatus());
|
||||
});
|
||||
when(deptCoreService.getDept(eq(dept.getId()))).thenReturn(dept);
|
||||
|
||||
// 调用,校验异常
|
||||
assertServiceException(() -> userService.checkDeptEnable(deptId),
|
||||
DEPT_NOT_ENABLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCheckPostEnable_notFound() {
|
||||
assertServiceException(() -> userService.checkPostEnable(randomSet(Long.class)),
|
||||
POST_NOT_FOUND);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCheckPostEnable_notEnable() {
|
||||
// 准备参数
|
||||
Set<Long> postIds = randomSet(Long.class);
|
||||
// mock postService 的方法
|
||||
List<SysPostDO> posts = CollectionUtils.convertList(postIds, postId ->
|
||||
randomPojo(SysPostDO.class, o -> {
|
||||
o.setId(postId);
|
||||
o.setStatus(CommonStatusEnum.DISABLE.getStatus());
|
||||
}));
|
||||
when(postService.getPosts(eq(postIds), isNull())).thenReturn(posts);
|
||||
|
||||
// 调用,校验异常
|
||||
assertServiceException(() -> userService.checkPostEnable(postIds),
|
||||
POST_NOT_ENABLE, CollUtil.getFirst(posts).getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCheckOldPassword_notExists() {
|
||||
assertServiceException(() -> userService.checkOldPassword(randomLongId(), randomString()),
|
||||
@ -561,7 +512,7 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
@Test
|
||||
public void testCheckOldPassword_passwordFailed() {
|
||||
// mock 数据
|
||||
UserDO user = randomSysUserDO();
|
||||
AdminUserDO user = randomSysUserDO();
|
||||
userMapper.insert(user);
|
||||
// 准备参数
|
||||
Long id = user.getId();
|
||||
@ -594,12 +545,12 @@ public class UserServiceImplTest extends BaseDbUnitTest {
|
||||
// ========== 随机对象 ==========
|
||||
|
||||
@SafeVarargs
|
||||
private static UserDO randomSysUserDO(Consumer<UserDO>... consumers) {
|
||||
Consumer<UserDO> consumer = (o) -> {
|
||||
private static AdminUserDO randomSysUserDO(Consumer<AdminUserDO>... consumers) {
|
||||
Consumer<AdminUserDO> consumer = (o) -> {
|
||||
o.setStatus(randomEle(CommonStatusEnum.values()).getStatus()); // 保证 status 的范围
|
||||
o.setSex(randomEle(SysSexEnum.values()).getSex()); // 保证 sex 的范围
|
||||
};
|
||||
return randomPojo(UserDO.class, ArrayUtils.append(consumer, consumers));
|
||||
return randomPojo(AdminUserDO.class, ArrayUtils.append(consumer, consumers));
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user