You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by zh...@apache.org on 2018/08/13 06:44:49 UTC

[incubator-servicecomb-saga] 01/01: SCB-831 fix test case failed on windows environment in LoadBalancedClusterMessageSenderTest

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

zhengyangyong pushed a commit to branch SCB-831
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-saga.git

commit e24fd90a36f82686d8fa95561237cad702af7108
Author: zhengyangyong <ya...@huawei.com>
AuthorDate: Mon Aug 13 14:42:18 2018 +0800

    SCB-831 fix test case failed on windows environment in LoadBalancedClusterMessageSenderTest
    
    Signed-off-by: zhengyangyong <ya...@huawei.com>
---
 .../grpc/LoadBalancedClusterMessageSenderTest.java | 31 ++++++----------------
 1 file changed, 8 insertions(+), 23 deletions(-)

diff --git a/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java b/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java
index 3a16558..dc89fc3 100644
--- a/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java
+++ b/omega/omega-connector/omega-connector-grpc/src/test/java/org/apache/servicecomb/saga/omega/connector/grpc/LoadBalancedClusterMessageSenderTest.java
@@ -18,7 +18,6 @@
 package org.apache.servicecomb.saga.omega.connector.grpc;
 
 import static com.seanyinx.github.unit.scaffolding.AssertUtils.expectFailing;
-import static com.seanyinx.github.unit.scaffolding.Randomness.uniquify;
 import static java.lang.Thread.State.WAITING;
 import static java.util.concurrent.TimeUnit.SECONDS;
 import static org.awaitility.Awaitility.await;
@@ -31,45 +30,27 @@ import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 
 import java.io.IOException;
-import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Queue;
 import java.util.concurrent.Callable;
-import java.util.concurrent.ConcurrentLinkedQueue;
 
-import org.apache.servicecomb.saga.common.EventType;
 import org.apache.servicecomb.saga.omega.context.ServiceConfig;
-import org.apache.servicecomb.saga.omega.transaction.MessageDeserializer;
-import org.apache.servicecomb.saga.omega.transaction.MessageHandler;
 import org.apache.servicecomb.saga.omega.transaction.MessageSender;
-import org.apache.servicecomb.saga.omega.transaction.MessageSerializer;
 import org.apache.servicecomb.saga.omega.transaction.OmegaException;
 import org.apache.servicecomb.saga.omega.transaction.TxAbortedEvent;
 import org.apache.servicecomb.saga.omega.transaction.TxEvent;
 import org.apache.servicecomb.saga.omega.transaction.TxStartedEvent;
-import org.apache.servicecomb.saga.pack.contract.grpc.GrpcAck;
-import org.apache.servicecomb.saga.pack.contract.grpc.GrpcCompensateCommand;
-import org.apache.servicecomb.saga.pack.contract.grpc.GrpcServiceConfig;
-import org.apache.servicecomb.saga.pack.contract.grpc.GrpcTxEvent;
-import org.apache.servicecomb.saga.pack.contract.grpc.TxEventServiceGrpc.TxEventServiceImplBase;
-import org.junit.After;
-import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.mockito.Mockito;
 
 import io.grpc.Server;
 import io.grpc.ServerBuilder;
-import io.grpc.stub.StreamObserver;
 
 public class LoadBalancedClusterMessageSenderTest extends LoadBalancedClusterMessageSenderTestBase {
   @Override
   protected MessageSender newMessageSender(String[] addresses) {
     AlphaClusterConfig clusterConfig = new AlphaClusterConfig(Arrays.asList(addresses),
-        false, false, null,null,null);
+        false, false, null, null, null);
     return new LoadBalancedClusterMessageSender(
         clusterConfig,
         serializer,
@@ -81,7 +62,7 @@ public class LoadBalancedClusterMessageSenderTest extends LoadBalancedClusterMes
 
   @BeforeClass
   public static void beforeClass() throws Exception {
-    for(int port: ports) {
+    for (int port : ports) {
       startServerOnPort(port);
     }
   }
@@ -138,7 +119,8 @@ public class LoadBalancedClusterMessageSenderTest extends LoadBalancedClusterMes
       }
     });
 
-    TxEvent abortedEvent = new TxAbortedEvent(globalTxId, localTxId, parentTxId, compensationMethod, new RuntimeException("oops"));
+    TxEvent abortedEvent = new TxAbortedEvent(globalTxId, localTxId, parentTxId, compensationMethod,
+        new RuntimeException("oops"));
     messageSender.send(abortedEvent);
 
     // restarted server gets priority, since it had no traffic
@@ -254,7 +236,7 @@ public class LoadBalancedClusterMessageSenderTest extends LoadBalancedClusterMes
 
   @Test
   public void stopSendingWhenClusterIsDown() throws Exception {
-    for(Server server:servers.values()) {
+    for (Server server : servers.values()) {
       server.shutdownNow();
     }
     messageSender.onConnected();
@@ -278,6 +260,9 @@ public class LoadBalancedClusterMessageSenderTest extends LoadBalancedClusterMes
     assertThat(eventsMap.get(8080).isEmpty(), is(true));
     assertThat(eventsMap.get(8090).isEmpty(), is(true));
 
+    //it seems in Windows environment we need wait a short time in order to make sure onError in GrpcCompensateStreamObserver triggered after servers shutdown
+    Thread.sleep(2000);
+
     startServerOnPort(8080);
     startServerOnPort(8090);