This is an automated email from the ASF dual-hosted git repository.

benjobs pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git


The following commit(s) were added to refs/heads/dev by this push:
     new cb27ccf52 improvement 3865 (#3871)
cb27ccf52 is described below

commit cb27ccf52ca4bd64917353e8182fac9c55e7d89e
Author: xiangzihao <[email protected]>
AuthorDate: Tue Jul 16 20:58:09 2024 +0800

    improvement 3865 (#3871)
---
 .../console/system/service/impl/AccessTokenServiceImpl.java        | 5 +++++
 .../java/org/apache/streampark/e2e/cases/TokenManagementTest.java  | 7 ++++---
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/AccessTokenServiceImpl.java
 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/AccessTokenServiceImpl.java
index f035cd45b..29b03261a 100644
--- 
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/AccessTokenServiceImpl.java
+++ 
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/AccessTokenServiceImpl.java
@@ -59,6 +59,11 @@ public class AccessTokenServiceImpl extends 
ServiceImpl<AccessTokenMapper, Acces
         if (user == null) {
             return RestResponse.success().put("code", 0).message("user not 
available");
         }
+        AccessToken existAccessToken = 
baseMapper.selectByUserId(user.getUserId());
+        if (existAccessToken != null) {
+            return RestResponse.success().put("code", 0)
+                .message(String.format("user %s already has a token", 
user.getUsername()));
+        }
         String token = WebUtils.encryptToken(
             JWTUtil.sign(
                 user.getUserId(), user.getUsername(), user.getSalt(),
diff --git 
a/streampark-e2e/streampark-e2e-case/src/test/java/org/apache/streampark/e2e/cases/TokenManagementTest.java
 
b/streampark-e2e/streampark-e2e-case/src/test/java/org/apache/streampark/e2e/cases/TokenManagementTest.java
index f677fd032..e32b7a7f5 100644
--- 
a/streampark-e2e/streampark-e2e-case/src/test/java/org/apache/streampark/e2e/cases/TokenManagementTest.java
+++ 
b/streampark-e2e/streampark-e2e-case/src/test/java/org/apache/streampark/e2e/cases/TokenManagementTest.java
@@ -25,6 +25,7 @@ import 
org.apache.streampark.e2e.pages.system.TokenManagementPage;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Order;
 import org.junit.jupiter.api.Test;
+import org.openqa.selenium.By;
 import org.openqa.selenium.Keys;
 import org.openqa.selenium.WebElement;
 import org.openqa.selenium.remote.RemoteWebDriver;
@@ -93,13 +94,13 @@ public class TokenManagementTest {
     @Order(30)
     void testCreateDuplicateToken() {
         final TokenManagementPage tokenManagementPage = new 
TokenManagementPage(browser);
-        browser.navigate().refresh();
+
         tokenManagementPage.createToken(existUserName, newTokenDescription);
 
         Awaitility.await()
             .untilAsserted(
-                () -> 
assertThat(tokenManagementPage.errorMessageSearchLayout())
-                    .as("Please select a user").isNotNull());
+                () -> 
assertThat(browser.findElement(By.tagName("body")).getText())
+                    .contains(String.format("user %s already has a token", 
existUserName)));
 
         tokenManagementPage.createTokenForm().buttonCancel().click();
     }

Reply via email to