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