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

lizhimins pushed a commit to branch rocketmq-studio
in repository https://gitbox.apache.org/repos/asf/rocketmq-dashboard.git


The following commit(s) were added to refs/heads/rocketmq-studio by this push:
     new f1dc292df test(studio): restore topic query tail-budget coverage and 
add CI backend tests (#2621)
f1dc292df is described below

commit f1dc292df9534f0b4312a639a9a5bdbefb8fa0ef
Author: aias00 <[email protected]>
AuthorDate: Thu Aug 27 14:00:59 2026 +0800

    test(studio): restore topic query tail-budget coverage and add CI backend 
tests (#2621)
    
    Signed-off-by: liuhy <[email protected]>
---
 .github/workflows/ci.yml                             | 20 ++++++++++++++++++++
 .../provider/apache/RocketMQMessageProviderTest.java |  9 ++++++---
 2 files changed, 26 insertions(+), 3 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 0b99f2c52..ebcfbabf1 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -34,6 +34,26 @@ jobs:
       - name: Build backend
         run: mvn -B -ntp clean package -DskipTests
 
+  backend-test:
+    name: Backend Tests (Java 21)
+    runs-on: ubuntu-latest
+    defaults:
+      run:
+        working-directory: server
+    steps:
+      - name: Checkout
+        uses: actions/checkout@v4
+
+      - name: Set up JDK 21 (Dragonwell)
+        uses: actions/setup-java@v4
+        with:
+          distribution: dragonwell
+          java-version: "21"
+          cache: maven
+
+      - name: Run backend tests
+        run: mvn -B -ntp test
+
   frontend-build:
     name: Frontend Build (Node 20)
     runs-on: ubuntu-latest
diff --git 
a/server/src/test/java/org/apache/rocketmq/studio/provider/apache/RocketMQMessageProviderTest.java
 
b/server/src/test/java/org/apache/rocketmq/studio/provider/apache/RocketMQMessageProviderTest.java
index 5c8f2756f..af16942bd 100644
--- 
a/server/src/test/java/org/apache/rocketmq/studio/provider/apache/RocketMQMessageProviderTest.java
+++ 
b/server/src/test/java/org/apache/rocketmq/studio/provider/apache/RocketMQMessageProviderTest.java
@@ -79,6 +79,8 @@ import static org.mockito.Mockito.when;
 @ExtendWith(MockitoExtension.class)
 class RocketMQMessageProviderTest {
 
+    private static final long TOPIC_TAIL_SCAN_BUDGET = 32L * 32;
+
     @Mock
     private DefaultMQAdminExt adminExt;
 
@@ -618,7 +620,7 @@ class RocketMQMessageProviderTest {
         assertThat(messages).hasSize(200);
         assertThat(messages.get(0).getMsgId()).isEqualTo("msg-39999");
         assertThat(messages.get(199).getMsgId()).isEqualTo("msg-39800");
-        verify(pullConsumer).pull(queue, "*", 8_000L, 32);
+        verify(pullConsumer).pull(queue, "*", maxOffsetExclusive - 
TOPIC_TAIL_SCAN_BUDGET, 32);
         verify(pullConsumer, never()).pull(queue, "*", 0L, 32);
     }
 
@@ -643,8 +645,9 @@ class RocketMQMessageProviderTest {
 
         assertThat(messages).hasSize(200);
         assertThat(pulledOffsets).isNotEmpty();
-        assertThat(pulledOffsets.get(0)).isEqualTo(18_000L);
-        assertThat(pulledOffsets).allMatch(offset -> offset >= 18_000L);
+        long expectedFirstOffset = maxOffsetExclusive - TOPIC_TAIL_SCAN_BUDGET;
+        assertThat(pulledOffsets.get(0)).isEqualTo(expectedFirstOffset);
+        assertThat(pulledOffsets).allMatch(offset -> offset >= 
expectedFirstOffset);
     }
 
     private MQClientAPIImpl mockOffsetLookupClient() {

Reply via email to