mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-11-01 02:38:43 +08:00 
			
		
		
		
	登录:社交登录时,额外返回 openid
This commit is contained in:
		| @@ -6,6 +6,7 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | ||||
| import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | ||||
| import cn.iocoder.yudao.module.system.api.sms.SmsCodeApi; | ||||
| import cn.iocoder.yudao.module.system.api.social.dto.SocialUserBindReqDTO; | ||||
| import cn.iocoder.yudao.module.system.api.social.dto.SocialUserRespDTO; | ||||
| import cn.iocoder.yudao.module.system.controller.admin.auth.vo.*; | ||||
| import cn.iocoder.yudao.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO; | ||||
| import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO; | ||||
| @@ -235,8 +236,8 @@ public class AdminAuthServiceImplTest extends BaseDbUnitTest { | ||||
|         AuthSocialLoginReqVO reqVO = randomPojo(AuthSocialLoginReqVO.class); | ||||
|         // mock 方法(绑定的用户编号) | ||||
|         Long userId = 1L; | ||||
|         when(socialUserService.getBindUserId(eq(UserTypeEnum.ADMIN.getValue()), eq(reqVO.getType()), | ||||
|                 eq(reqVO.getCode()), eq(reqVO.getState()))).thenReturn(userId); | ||||
|         when(socialUserService.getSocialUser(eq(UserTypeEnum.ADMIN.getValue()), eq(reqVO.getType()), | ||||
|                 eq(reqVO.getCode()), eq(reqVO.getState()))).thenReturn(new SocialUserRespDTO(randomString(), userId)); | ||||
|         // mock(用户) | ||||
|         AdminUserDO user = randomPojo(AdminUserDO.class, o -> o.setId(userId)); | ||||
|         when(userService.getUser(eq(userId))).thenReturn(user); | ||||
|   | ||||
| @@ -4,6 +4,7 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; | ||||
| import cn.iocoder.yudao.framework.social.core.YudaoAuthRequestFactory; | ||||
| import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | ||||
| import cn.iocoder.yudao.module.system.api.social.dto.SocialUserBindReqDTO; | ||||
| import cn.iocoder.yudao.module.system.api.social.dto.SocialUserRespDTO; | ||||
| import cn.iocoder.yudao.module.system.dal.dataobject.social.SocialUserBindDO; | ||||
| import cn.iocoder.yudao.module.system.dal.dataobject.social.SocialUserDO; | ||||
| import cn.iocoder.yudao.module.system.dal.mysql.social.SocialUserBindMapper; | ||||
| @@ -195,10 +196,11 @@ public class SocialUserServiceImplTest extends BaseDbUnitTest { | ||||
|                 .setSocialType(SocialTypeEnum.GITEE.getType()).setSocialUserId(socialUser.getId())); | ||||
|  | ||||
|         // 调用 | ||||
|         socialUserService.bindSocialUser(reqDTO); | ||||
|         String openid = socialUserService.bindSocialUser(reqDTO); | ||||
|         // 断言 | ||||
|         List<SocialUserBindDO> socialUserBinds = socialUserBindMapper.selectList(); | ||||
|         assertEquals(1, socialUserBinds.size()); | ||||
|         assertEquals(socialUser.getOpenid(), openid); | ||||
|     } | ||||
|  | ||||
|     @Test | ||||
| @@ -232,25 +234,26 @@ public class SocialUserServiceImplTest extends BaseDbUnitTest { | ||||
|     } | ||||
|  | ||||
|     @Test | ||||
|     public void testGetBindUserId() { | ||||
|     public void testGetSocialUser() { | ||||
|         // 准备参数 | ||||
|         Integer userType = UserTypeEnum.ADMIN.getValue(); | ||||
|         Integer type = SocialTypeEnum.GITEE.getType(); | ||||
|         String code = "tudou"; | ||||
|         String state = "yuanma"; | ||||
|         // mock 社交用户 | ||||
|         SocialUserDO socialUser = randomPojo(SocialUserDO.class).setType(type).setCode(code).setState(state); | ||||
|         socialUserMapper.insert(socialUser); | ||||
|         SocialUserDO socialUserDO = randomPojo(SocialUserDO.class).setType(type).setCode(code).setState(state); | ||||
|         socialUserMapper.insert(socialUserDO); | ||||
|         // mock 社交用户的绑定 | ||||
|         Long userId = randomLong(); | ||||
|         SocialUserBindDO socialUserBind = randomPojo(SocialUserBindDO.class).setUserType(userType).setUserId(userId) | ||||
|                 .setSocialType(type).setSocialUserId(socialUser.getId()); | ||||
|                 .setSocialType(type).setSocialUserId(socialUserDO.getId()); | ||||
|         socialUserBindMapper.insert(socialUserBind); | ||||
|  | ||||
|         // 调用 | ||||
|         Long result = socialUserService.getBindUserId(userType, type, code, state); | ||||
|         SocialUserRespDTO socialUser = socialUserService.getSocialUser(userType, type, code, state); | ||||
|         // 断言 | ||||
|         assertEquals(userId, result); | ||||
|         assertEquals(userId, socialUser.getUserId()); | ||||
|         assertEquals(socialUserDO.getOpenid(), socialUser.getOpenid()); | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 YunaiV
					YunaiV