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

ptupitsyn pushed a commit to branch ignite-16771
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-16771 by this push:
     new 2ae02d6f0 wip ClientComputeTest
2ae02d6f0 is described below

commit 2ae02d6f01dc0516ad0ca8a7cbbd943d1719f8cc
Author: Pavel Tupitsyn <ptupit...@apache.org>
AuthorDate: Thu Apr 14 18:12:32 2022 +0300

    wip ClientComputeTest
---
 .../apache/ignite/client/ClientComputeTest.java    | 26 +++++++++++++++++-----
 .../org/apache/ignite/client/RetryPolicyTest.java  |  2 +-
 .../java/org/apache/ignite/client/TestServer.java  |  9 ++++----
 3 files changed, 27 insertions(+), 10 deletions(-)

diff --git 
a/modules/client/src/test/java/org/apache/ignite/client/ClientComputeTest.java 
b/modules/client/src/test/java/org/apache/ignite/client/ClientComputeTest.java
index 943a1cc19..976a3367c 100644
--- 
a/modules/client/src/test/java/org/apache/ignite/client/ClientComputeTest.java
+++ 
b/modules/client/src/test/java/org/apache/ignite/client/ClientComputeTest.java
@@ -17,9 +17,16 @@
 
 package org.apache.ignite.client;
 
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import java.util.Arrays;
+import java.util.Set;
 import java.util.function.Function;
+import java.util.stream.Collectors;
 import org.apache.ignite.client.fakes.FakeIgnite;
 import org.apache.ignite.internal.util.IgniteUtils;
+import org.apache.ignite.network.ClusterNode;
+import org.apache.ignite.network.NetworkAddress;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
 
@@ -37,11 +44,14 @@ public class ClientComputeTest {
     }
 
     @Test
-    public void 
testClientSendsComputeJobToTargetNodeWhenDirectConnectionExists() {
-        // TODO: Multiple servers.
+    public void 
testClientSendsComputeJobToTargetNodeWhenDirectConnectionExists() throws 
Exception {
         initServers(reqId -> false);
 
+        try (var client = getClient()) {
+            String res = 
client.compute().<String>execute(getClusterNodes("s1"), "job").join();
 
+            assertEquals("x", res);
+        }
     }
 
     @Test
@@ -62,8 +72,14 @@ public class ClientComputeTest {
     }
 
     private void initServers(Function<Integer, Boolean> shouldDropConnection) {
-        server1 = new TestServer(10900, 10, 0, new FakeIgnite(), 
shouldDropConnection);
-        server2 = new TestServer(10910, 10, 0, new FakeIgnite(), 
shouldDropConnection);
-        server3 = new TestServer(10920, 10, 0, new FakeIgnite(), 
shouldDropConnection);
+        server1 = new TestServer(10900, 10, 0, new FakeIgnite(), 
shouldDropConnection, "s1");
+        server2 = new TestServer(10910, 10, 0, new FakeIgnite(), 
shouldDropConnection, "s2");
+        server3 = new TestServer(10920, 10, 0, new FakeIgnite(), 
shouldDropConnection, "s3");
+    }
+
+    private Set<ClusterNode> getClusterNodes(String... names) {
+        return Arrays.stream(names)
+                .map(s -> new ClusterNode("id", s, new 
NetworkAddress("127.0.0.1", 8080)))
+                .collect(Collectors.toSet());
     }
 }
diff --git 
a/modules/client/src/test/java/org/apache/ignite/client/RetryPolicyTest.java 
b/modules/client/src/test/java/org/apache/ignite/client/RetryPolicyTest.java
index 057ff2009..096f34aa4 100644
--- a/modules/client/src/test/java/org/apache/ignite/client/RetryPolicyTest.java
+++ b/modules/client/src/test/java/org/apache/ignite/client/RetryPolicyTest.java
@@ -231,6 +231,6 @@ public class RetryPolicyTest {
         FakeIgnite ign = new FakeIgnite();
         ign.tables().createTable("t", c -> {});
 
-        server = new TestServer(10900, 10, 0, ign, shouldDropConnection);
+        server = new TestServer(10900, 10, 0, ign, shouldDropConnection, null);
     }
 }
diff --git 
a/modules/client/src/test/java/org/apache/ignite/client/TestServer.java 
b/modules/client/src/test/java/org/apache/ignite/client/TestServer.java
index 7f8b8f791..3cf50e8b2 100644
--- a/modules/client/src/test/java/org/apache/ignite/client/TestServer.java
+++ b/modules/client/src/test/java/org/apache/ignite/client/TestServer.java
@@ -64,7 +64,7 @@ public class TestServer implements AutoCloseable {
             long idleTimeout,
             Ignite ignite
     ) {
-        this(port, portRange, idleTimeout, ignite, null);
+        this(port, portRange, idleTimeout, ignite, null, null);
     }
 
     /**
@@ -80,7 +80,8 @@ public class TestServer implements AutoCloseable {
             int portRange,
             long idleTimeout,
             Ignite ignite,
-            Function<Integer, Boolean> shouldDropConnection
+            Function<Integer, Boolean> shouldDropConnection,
+            String nodeName
     ) {
         cfg = new ConfigurationRegistry(
                 List.of(ClientConnectorConfiguration.KEY, 
NetworkConfiguration.KEY),
@@ -101,8 +102,8 @@ public class TestServer implements AutoCloseable {
         bootstrapFactory.start();
 
         ClusterService clusterService = mock(ClusterService.class, 
RETURNS_DEEP_STUBS);
-        
Mockito.when(clusterService.topologyService().localMember().id()).thenReturn("id");
-        
Mockito.when(clusterService.topologyService().localMember().name()).thenReturn("consistent-id");
+        
Mockito.when(clusterService.topologyService().localMember().id()).thenReturn(nodeName
 == null ? "id" : nodeName + "-id");
+        
Mockito.when(clusterService.topologyService().localMember().name()).thenReturn(nodeName
 == null ? "consistent-id" : nodeName);
 
         module = shouldDropConnection != null
                 ? new TestClientHandlerModule(ignite, cfg, bootstrapFactory, 
shouldDropConnection)

Reply via email to