You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@dubbo.apache.org by al...@apache.org on 2022/12/01 04:29:40 UTC

[dubbo-samples] branch master updated: Tri server stream 2 (#600)

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

albumenj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-samples.git


The following commit(s) were added to refs/heads/master by this push:
     new 73aecc6b Tri server stream 2 (#600)
73aecc6b is described below

commit 73aecc6b9a6d6bd2817e5f6d15336b29ba1e0ade
Author: earthchen <ea...@gmail.com>
AuthorDate: Thu Dec 1 12:29:32 2022 +0800

    Tri server stream 2 (#600)
---
 .../dubbo/sample/tri/grpc/GrpcClientTest.java      | 35 ++++++++++++++++------
 1 file changed, 26 insertions(+), 9 deletions(-)

diff --git a/dubbo-samples-triple/src/test/java/org/apache/dubbo/sample/tri/grpc/GrpcClientTest.java b/dubbo-samples-triple/src/test/java/org/apache/dubbo/sample/tri/grpc/GrpcClientTest.java
index 36aad466..570bd57f 100644
--- a/dubbo-samples-triple/src/test/java/org/apache/dubbo/sample/tri/grpc/GrpcClientTest.java
+++ b/dubbo-samples-triple/src/test/java/org/apache/dubbo/sample/tri/grpc/GrpcClientTest.java
@@ -17,20 +17,21 @@
 
 package org.apache.dubbo.sample.tri.grpc;
 
+import io.grpc.ManagedChannel;
+import io.grpc.ManagedChannelBuilder;
+import io.grpc.Metadata;
+import io.grpc.stub.MetadataUtils;
 import org.apache.dubbo.sample.tri.GreeterGrpc;
 import org.apache.dubbo.sample.tri.GreeterReply;
 import org.apache.dubbo.sample.tri.GreeterRequest;
 import org.apache.dubbo.sample.tri.util.StdoutStreamObserver;
 import org.apache.dubbo.sample.tri.util.TriSampleConstants;
-
-import io.grpc.ManagedChannel;
-import io.grpc.ManagedChannelBuilder;
-import io.grpc.Metadata;
-import io.grpc.stub.MetadataUtils;
 import org.junit.Assert;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
+import java.util.HashMap;
+import java.util.Map;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
@@ -69,17 +70,33 @@ public class GrpcClientTest {
         final GreeterRequest request = GreeterRequest.newBuilder()
                 .setName("request")
                 .build();
-        stub.greetServerStream(request, new StdoutStreamObserver<GreeterReply>("grpc sayGreeterServerStream") {
+        String key = "lastTimestamp";
+        Map<String, Long> map = new HashMap<>();
+        StdoutStreamObserver<GreeterReply> observer = new StdoutStreamObserver<GreeterReply>(
+                "sayGreeterServerStream") {
             @Override
             public void onNext(GreeterReply data) {
+                long lastTimestamp = map.getOrDefault(key, 0L);
+                long now = System.currentTimeMillis();
+                map.put(key, now);
+                if (lastTimestamp == 0) {
+                    latch.countDown();
+                } else {
+                    long diff = Math.abs(now - lastTimestamp - 1000);
+                    System.out.println(diff);
+                    if (diff < 50) {
+                        latch.countDown();
+                    }
+                }
                 super.onNext(data);
-                latch.countDown();
             }
-        });
-        Assert.assertTrue(latch.await(3, TimeUnit.SECONDS));
+        };
+        stub.greetServerStream(request, observer);
+        Assert.assertTrue(latch.await(12, TimeUnit.SECONDS));
     }
 
 
+
     @Test
     public void stream() throws InterruptedException {
         int n = 10;


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@dubbo.apache.org
For additional commands, e-mail: notifications-help@dubbo.apache.org