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

liuhongyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git


The following commit(s) were added to refs/heads/master by this push:
     new 9234be312b test: add more test for FallbackShenyuClientRegisterService 
(#6155)
9234be312b is described below

commit 9234be312b213803bff9a1691ddf5afb82f41588
Author: shown <[email protected]>
AuthorDate: Mon Sep 15 08:53:52 2025 +0800

    test: add more test for FallbackShenyuClientRegisterService (#6155)
    
    Signed-off-by: yuluo-yx <[email protected]>
    Co-authored-by: aias00 <[email protected]>
---
 .../FallbackShenyuClientRegisterService.java       | 30 +++++++---------
 .../FallbackShenyuClientRegisterServiceTest.java   | 41 ++++++++++++++++++++++
 2 files changed, 53 insertions(+), 18 deletions(-)

diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
index 8dc7bf2032..1ff2cc6e5b 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
@@ -86,7 +86,7 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
         FallbackRegisterTask registryTask = new FallbackRegisterTask(key, 
this);
         fallsRegisters.put(key, holder);
         timer.add(registryTask);
-        LOG.info("Add to Fallback and wait for execution, {}:{}:{}", 
holder.getNamespaceId(), holder.getSelectorName(), holder.getUriList());
+        LOG.info("Add to Fallback and wait for execution, {}:{}:{}", 
holder.namespaceId(), holder.selectorName(), holder.uriList());
     }
 
     private void removeFallBack(final String key) {
@@ -96,9 +96,9 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
     private void recover(final String key) {
         FallbackHolder fallbackHolder = fallsRegisters.get(key);
         if (Objects.nonNull(fallbackHolder)) {
-            List<URIRegisterDTO> uriList = fallbackHolder.getUriList();
-            String selectorName = fallbackHolder.getSelectorName();
-            this.doRegisterURI(selectorName, uriList, 
fallbackHolder.getNamespaceId());
+            List<URIRegisterDTO> uriList = fallbackHolder.uriList();
+            String selectorName = fallbackHolder.selectorName();
+            this.doRegisterURI(selectorName, uriList, 
fallbackHolder.namespaceId());
             LOG.info("Register success: {},{}", selectorName, uriList);
         }
     }
@@ -128,13 +128,7 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
     /**
      * The type Fall holder.
      */
-    private static final class FallbackHolder {
-
-        private final String selectorName;
-
-        private final List<URIRegisterDTO> uriList;
-
-        private final String namespaceId;
+    private record FallbackHolder(String selectorName, List<URIRegisterDTO> 
uriList, String namespaceId) {
 
         /**
          * Instantiates a new Fall holder.
@@ -142,10 +136,7 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
          * @param selectorName the selector name
          * @param uriList      the uri list
          */
-        FallbackHolder(final String selectorName, final List<URIRegisterDTO> 
uriList, final String namespaceId) {
-            this.selectorName = selectorName;
-            this.uriList = uriList;
-            this.namespaceId = namespaceId;
+        private FallbackHolder {
         }
 
         /**
@@ -153,7 +144,8 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
          *
          * @return the selector name
          */
-        public String getSelectorName() {
+        @Override
+        public String selectorName() {
             return selectorName;
         }
 
@@ -162,7 +154,8 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
          *
          * @return the uri list
          */
-        public List<URIRegisterDTO> getUriList() {
+        @Override
+        public List<URIRegisterDTO> uriList() {
             return uriList;
         }
 
@@ -171,7 +164,8 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
          *
          * @return the namespace id
          */
-        public String getNamespaceId() {
+        @Override
+        public String namespaceId() {
             return namespaceId;
         }
     }
diff --git 
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterServiceTest.java
 
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterServiceTest.java
index 7def1cb009..7ee4ac7e9a 100644
--- 
a/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterServiceTest.java
+++ 
b/shenyu-admin/src/test/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterServiceTest.java
@@ -25,10 +25,12 @@ import org.apache.shenyu.register.common.dto.URIRegisterDTO;
 import org.junit.jupiter.api.Test;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 import static 
org.apache.shenyu.common.constant.Constants.SYS_DEFAULT_NAMESPACE_ID;
 import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
 
 /**
  * Test cases for FallbackShenyuClientRegisterService.
@@ -37,6 +39,7 @@ class FallbackShenyuClientRegisterServiceTest {
 
     @Test
     public void testRegisterURI() {
+
         MockFallbackShenyuClientRegisterService 
mockFallbackShenyuClientRegisterService = new 
MockFallbackShenyuClientRegisterService();
         assertEquals("doRegisterURI", 
mockFallbackShenyuClientRegisterService.registerURI("Selector_Name", new 
ArrayList<>(), SYS_DEFAULT_NAMESPACE_ID));
 
@@ -44,6 +47,44 @@ class FallbackShenyuClientRegisterServiceTest {
         assertEquals(StringUtils.EMPTY, 
mockFallbackShenyuClientRegisterServiceException.registerURI("Selector_Name", 
new ArrayList<>(), SYS_DEFAULT_NAMESPACE_ID));
     }
 
+    @Test
+    public void testHeartbeat() {
+
+        MockFallbackShenyuClientRegisterService mockService = new 
MockFallbackShenyuClientRegisterService();
+        List<URIRegisterDTO> uriList = Collections.singletonList(new 
URIRegisterDTO());
+        String result = mockService.heartbeat("Selector_Name", uriList, 
SYS_DEFAULT_NAMESPACE_ID);
+
+        assertEquals("doHeartbeat", result);
+
+        MockFallbackShenyuClientRegisterServiceException mockExceptionService 
= new MockFallbackShenyuClientRegisterServiceException();
+
+        assertThrows(ShenyuException.class, () -> 
mockExceptionService.heartbeat("Selector_Name", uriList, 
SYS_DEFAULT_NAMESPACE_ID));
+    }
+
+    @Test
+    public void testRpcType() {
+
+        MockFallbackShenyuClientRegisterService mockService = new 
MockFallbackShenyuClientRegisterService();
+
+        assertEquals("grpc", mockService.rpcType());
+    }
+
+    @Test
+    public void testRegisterMetaDataAndApiDoc() {
+
+        MockFallbackShenyuClientRegisterService mockService = new 
MockFallbackShenyuClientRegisterService();
+
+        assertEquals(null, mockService.register(new MetaDataRegisterDTO()));
+        assertEquals(null, mockService.registerApiDoc(new 
ApiDocRegisterDTO()));
+    }
+
+    @Test
+    public void testCheckNamespacePluginRel() {
+        MockFallbackShenyuClientRegisterService mockService = new 
MockFallbackShenyuClientRegisterService();
+        // Should not throw any exception
+        mockService.checkNamespacePluginRel("namespace", "plugin");
+    }
+
     static class MockFallbackShenyuClientRegisterService extends 
FallbackShenyuClientRegisterService {
 
         @Override

Reply via email to