Commit d405f4df25a0a9b693b223fb2010166716dace1e

Authored by YunaiV
1 parent c84e19e1

修复单元测试报错的问题

yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/impl/SysAuthServiceImpl.java
1 package cn.iocoder.yudao.adminserver.modules.system.service.auth.impl; 1 package cn.iocoder.yudao.adminserver.modules.system.service.auth.impl;
2 2
3 -import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysUserSessionService;  
4 -import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysPostService;  
5 -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;  
6 -import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;  
7 -import cn.iocoder.yudao.framework.security.core.LoginUser;  
8 -import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils;  
9 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
10 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO; 4 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO;
11 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialBindReqVO; 5 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialBindReqVO;
12 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLogin2ReqVO; 6 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLogin2ReqVO;
13 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLoginReqVO; 7 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLoginReqVO;
14 import cn.iocoder.yudao.adminserver.modules.system.convert.auth.SysAuthConvert; 8 import cn.iocoder.yudao.adminserver.modules.system.convert.auth.SysAuthConvert;
  9 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.dept.SysPostDO;
15 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeEnum; 10 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeEnum;
16 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum; 11 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum;
17 import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysAuthService; 12 import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysAuthService;
18 import cn.iocoder.yudao.adminserver.modules.system.service.common.SysCaptchaService; 13 import cn.iocoder.yudao.adminserver.modules.system.service.common.SysCaptchaService;
  14 +import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysPostService;
19 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService; 15 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService;
20 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService; 16 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
21 import cn.iocoder.yudao.coreservice.modules.system.dal.dataobject.social.SysSocialUserDO; 17 import cn.iocoder.yudao.coreservice.modules.system.dal.dataobject.social.SysSocialUserDO;
@@ -45,16 +41,14 @@ import org.springframework.stereotype.Service; @@ -45,16 +41,14 @@ import org.springframework.stereotype.Service;
45 import org.springframework.util.Assert; 41 import org.springframework.util.Assert;
46 42
47 import javax.annotation.Resource; 43 import javax.annotation.Resource;
  44 +import java.util.Collections;
48 import java.util.List; 45 import java.util.List;
49 -import java.util.Optional;  
50 import java.util.Objects; 46 import java.util.Objects;
51 import java.util.Set; 47 import java.util.Set;
52 -import java.util.stream.Collectors;  
53 48
54 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*; 49 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*;
55 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; 50 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
56 -import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*;  
57 -import static java.util.Collections.EMPTY_LIST; 51 +import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList;
58 import static java.util.Collections.singleton; 52 import static java.util.Collections.singleton;
59 53
60 /** 54 /**
@@ -83,7 +77,8 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -83,7 +77,8 @@ public class SysAuthServiceImpl implements SysAuthService {
83 @Resource 77 @Resource
84 private SysUserSessionCoreService userSessionCoreService; 78 private SysUserSessionCoreService userSessionCoreService;
85 @Resource 79 @Resource
86 - private SysPostService sysPostService; 80 + private SysPostService postService;
  81 + @Resource
87 private SysSocialService socialService; 82 private SysSocialService socialService;
88 83
89 // TODO @timfruit:静态枚举类,需要都大写,例如说 USER_TYPE_ENUM;静态变量,放在普通变量前面;这个实践不错哈。 84 // TODO @timfruit:静态枚举类,需要都大写,例如说 USER_TYPE_ENUM;静态变量,放在普通变量前面;这个实践不错哈。
@@ -130,11 +125,11 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -130,11 +125,11 @@ public class SysAuthServiceImpl implements SysAuthService {
130 return userSessionCoreService.createUserSession(loginUser, userIp, userAgent); 125 return userSessionCoreService.createUserSession(loginUser, userIp, userAgent);
131 } 126 }
132 127
133 -  
134 private List<String> getUserPosts(Set<Long> postIds) { 128 private List<String> getUserPosts(Set<Long> postIds) {
135 - return Optional.ofNullable(postIds).map(ids->  
136 - sysPostService.getPosts(ids).stream().map(post -> post.getCode()).collect(Collectors.toList())  
137 - ).orElse(EMPTY_LIST); 129 + if (CollUtil.isEmpty(postIds)) {
  130 + return Collections.emptyList();
  131 + }
  132 + return convertList(postService.getPosts(postIds), SysPostDO::getCode);
138 } 133 }
139 134
140 private void verifyCaptcha(String username, String captchaUUID, String captchaCode) { 135 private void verifyCaptcha(String username, String captchaUUID, String captchaCode) {
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/infra/service/file/InfFileServiceTest.java
@@ -2,10 +2,10 @@ package cn.iocoder.yudao.adminserver.modules.infra.service.file; @@ -2,10 +2,10 @@ package cn.iocoder.yudao.adminserver.modules.infra.service.file;
2 2
3 import cn.iocoder.yudao.adminserver.BaseDbUnitTest; 3 import cn.iocoder.yudao.adminserver.BaseDbUnitTest;
4 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO; 4 import cn.iocoder.yudao.adminserver.modules.infra.controller.file.vo.InfFilePageReqVO;
  5 +import cn.iocoder.yudao.adminserver.modules.infra.service.file.impl.InfFileServiceImpl;
5 import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO; 6 import cn.iocoder.yudao.coreservice.modules.infra.dal.dataobject.file.InfFileDO;
6 import cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.file.InfFileCoreMapper; 7 import cn.iocoder.yudao.coreservice.modules.infra.dal.mysql.file.InfFileCoreMapper;
7 import cn.iocoder.yudao.coreservice.modules.infra.framework.file.config.FileProperties; 8 import cn.iocoder.yudao.coreservice.modules.infra.framework.file.config.FileProperties;
8 -import cn.iocoder.yudao.coreservice.modules.infra.service.file.impl.InfFileCoreServiceImpl;  
9 import cn.iocoder.yudao.framework.common.pojo.PageResult; 9 import cn.iocoder.yudao.framework.common.pojo.PageResult;
10 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils; 10 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
11 import org.junit.jupiter.api.Test; 11 import org.junit.jupiter.api.Test;
@@ -19,7 +19,7 @@ import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEq @@ -19,7 +19,7 @@ import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEq
19 import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo; 19 import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
20 import static org.junit.jupiter.api.Assertions.assertEquals; 20 import static org.junit.jupiter.api.Assertions.assertEquals;
21 21
22 -@Import({InfFileCoreServiceImpl.class, FileProperties.class}) 22 +@Import({InfFileServiceImpl.class, FileProperties.class})
23 public class InfFileServiceTest extends BaseDbUnitTest { 23 public class InfFileServiceTest extends BaseDbUnitTest {
24 24
25 @Resource 25 @Resource
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/SysAuthServiceImplTest.java
@@ -6,6 +6,7 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeE @@ -6,6 +6,7 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeE
6 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum; 6 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum;
7 import cn.iocoder.yudao.adminserver.modules.system.service.auth.impl.SysAuthServiceImpl; 7 import cn.iocoder.yudao.adminserver.modules.system.service.auth.impl.SysAuthServiceImpl;
8 import cn.iocoder.yudao.adminserver.modules.system.service.common.SysCaptchaService; 8 import cn.iocoder.yudao.adminserver.modules.system.service.common.SysCaptchaService;
  9 +import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysPostService;
9 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService; 10 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService;
10 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService; 11 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
11 import cn.iocoder.yudao.coreservice.modules.system.dal.dataobject.user.SysUserDO; 12 import cn.iocoder.yudao.coreservice.modules.system.dal.dataobject.user.SysUserDO;
@@ -67,6 +68,8 @@ public class SysAuthServiceImplTest extends BaseDbUnitTest { @@ -67,6 +68,8 @@ public class SysAuthServiceImplTest extends BaseDbUnitTest {
67 private SysUserSessionCoreService userSessionCoreService; 68 private SysUserSessionCoreService userSessionCoreService;
68 @MockBean 69 @MockBean
69 private SysSocialService socialService; 70 private SysSocialService socialService;
  71 + @MockBean
  72 + private SysPostService postService;
70 73
71 @Test 74 @Test
72 public void testLoadUserByUsername_success() { 75 public void testLoadUserByUsername_success() {
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/LoginUser.java
@@ -63,6 +63,7 @@ public class LoginUser implements UserDetails { @@ -63,6 +63,7 @@ public class LoginUser implements UserDetails {
63 /** 63 /**
64 * group 目前指岗位代替 64 * group 目前指岗位代替
65 */ 65 */
  66 + // TODO jason:这个字段,改成 postCodes 明确更好哈
66 private List<String> groups; 67 private List<String> groups;
67 68
68 69
@@ -89,6 +90,7 @@ public class LoginUser implements UserDetails { @@ -89,6 +90,7 @@ public class LoginUser implements UserDetails {
89 @JsonIgnore// 避免序列化 90 @JsonIgnore// 避免序列化
90 public Collection<? extends GrantedAuthority> getAuthorities() { 91 public Collection<? extends GrantedAuthority> getAuthorities() {
91 List<GrantedAuthority> list = new ArrayList<>(1); 92 List<GrantedAuthority> list = new ArrayList<>(1);
  93 + // TODO @芋艿:看看有没更优化的方案
92 list.add(new SimpleGrantedAuthority("ROLE_ACTIVITI_USER")); 94 list.add(new SimpleGrantedAuthority("ROLE_ACTIVITI_USER"));
93 return list; 95 return list;
94 } 96 }