From 50846760e5ab5f68cb708edc72725b235e933a34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=BA=E9=98=B3?= Date: Wed, 15 Jun 2022 10:19:27 +0800 Subject: [PATCH] [fix-10386]LDAP user create with status enable (#10426) * LDAP user create with status enable * currect unit test --- .../api/service/impl/UsersServiceImpl.java | 1 + .../security/impl/ldap/LdapAuthenticatorTest.java | 14 ++++++-------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java index 056cf36082..34cbc91869 100644 --- a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java +++ b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java @@ -241,6 +241,7 @@ public class UsersServiceImpl extends BaseServiceImpl implements UsersService { user.setCreateTime(now); user.setUpdateTime(now); user.setQueue(""); + user.setState(Flag.YES.getCode()); // save user userMapper.insert(user); diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java index 143d7a6a6f..ba0f72a039 100644 --- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java +++ b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java @@ -38,6 +38,7 @@ import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; +import org.mockito.Spy; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -64,7 +65,7 @@ public class LdapAuthenticatorTest extends AbstractControllerTest { private LdapService ldapService; @MockBean(name = "sessionServiceImpl") private SessionService sessionService; - @MockBean(name = "usersServiceImpl") + @Spy private UsersService usersService; private LdapAuthenticator ldapAuthenticator; @@ -102,22 +103,19 @@ public class LdapAuthenticatorTest extends AbstractControllerTest { @Test public void testAuthenticate() { - when(usersService.createUser(userType, ldapUid, ldapEmail)).thenReturn(mockUser); - when(usersService.getUserByUserName(ldapUid)).thenReturn(mockUser); - when(sessionService.createSession(mockUser, ip)).thenReturn(mockSession.getId()); - + when(sessionService.createSession(Mockito.any(User.class), Mockito.eq(ip))).thenReturn(mockSession.getId()); when(ldapService.ldapLogin(ldapUid, ldapUserPwd)).thenReturn(ldapEmail); Result result = ldapAuthenticator.authenticate(ldapUid, ldapUserPwd, ip); Assert.assertEquals(Status.SUCCESS.getCode(), (int) result.getCode()); logger.info(result.toString()); - when(sessionService.createSession(mockUser, ip)).thenReturn(null); + when(sessionService.createSession(Mockito.any(User.class), Mockito.eq(ip))).thenReturn(null); + result = ldapAuthenticator.authenticate(ldapUid, ldapUserPwd, ip); Assert.assertEquals(Status.LOGIN_SESSION_FAILED.getCode(), (int) result.getCode()); - when(sessionService.createSession(mockUser, ip)).thenReturn(mockSession.getId()); - when(usersService.getUserByUserName(ldapUid)).thenReturn(null); + when(ldapService.ldapLogin(ldapUid, ldapUserPwd)).thenReturn(null); result = ldapAuthenticator.authenticate(ldapUid, ldapUserPwd, ip); Assert.assertEquals(Status.USER_NAME_PASSWD_ERROR.getCode(), (int) result.getCode()); }