Index: server/tests/src/test/java/org/infinispan/server/cli/CliIT.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/server/tests/src/test/java/org/infinispan/server/cli/CliIT.java b/server/tests/src/test/java/org/infinispan/server/cli/HttpCliIT.java
rename from server/tests/src/test/java/org/infinispan/server/cli/CliIT.java
rename to server/tests/src/test/java/org/infinispan/server/cli/HttpCliIT.java
--- a/server/tests/src/test/java/org/infinispan/server/cli/CliIT.java (revision e543efdd0051ef6616e4996155c1ced60c03bbbe)
+++ b/server/tests/src/test/java/org/infinispan/server/cli/HttpCliIT.java (date 1666032240000)
@@ -9,59 +9,19 @@
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
-import java.util.Properties;
import org.aesh.terminal.utils.Config;
import org.infinispan.cli.commands.CLI;
import org.infinispan.cli.impl.AeshDelegatingShell;
-import org.infinispan.commons.test.CommonsTestingUtil;
-import org.infinispan.commons.util.Util;
-import org.infinispan.server.test.api.TestUser;
import org.infinispan.server.test.core.AeshTestConnection;
import org.infinispan.server.test.core.AeshTestShell;
-import org.infinispan.server.test.core.Common;
-import org.infinispan.server.test.core.ServerRunMode;
-import org.infinispan.server.test.junit4.InfinispanServerRule;
-import org.infinispan.server.test.junit4.InfinispanServerRuleBuilder;
-import org.infinispan.server.test.junit4.InfinispanServerTestMethodRule;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Rule;
import org.junit.Test;
/**
* @author Tristan Tarrant <tristan@infinispan.org>
* @since 10.0
**/
-public class CliIT {
-
- @ClassRule
- public static InfinispanServerRule SERVERS =
- InfinispanServerRuleBuilder.config("configuration/AuthorizationImplicitTest.xml")
- .mavenArtifacts(Common.NASHORN_DEPS)
- .runMode(ServerRunMode.CONTAINER)
- .build();
-
- @Rule
- public InfinispanServerTestMethodRule SERVER_TEST = new InfinispanServerTestMethodRule(SERVERS);
-
- private static File workingDir;
- private static Properties properties;
-
- @BeforeClass
- public static void setup() {
- workingDir = new File(CommonsTestingUtil.tmpDirectory(CliIT.class));
- Util.recursiveFileRemove(workingDir);
- workingDir.mkdirs();
- properties = new Properties(System.getProperties());
- properties.put("cli.dir", workingDir.getAbsolutePath());
- }
-
- @AfterClass
- public static void teardown() {
- Util.recursiveFileRemove(workingDir);
- }
+public class HttpCliIT extends BaseCliIT {
@Test
public void testCliInteractive() {
@@ -249,17 +209,6 @@
}
}
- private void connect(AeshTestConnection terminal) {
- connect(terminal, TestUser.ADMIN);
- }
-
- private void connect(AeshTestConnection terminal, TestUser user) {
- // connect
- terminal.send("connect -u " + user.getUser() + " -p " + user.getPassword() + " " + hostAddress() + ":11222");
- terminal.assertContains("//containers/default]>");
- terminal.clear();
- }
-
@Test
public void testCliUploadProtobufSchemas() {
try (AeshTestConnection terminal = new AeshTestConnection()) {
@@ -333,18 +282,6 @@
}
}
- private String hostAddress() {
- return SERVERS.getTestServer().getDriver().getServerAddress(0).getHostAddress();
- }
-
- private String connectionUrl() {
- return connectionUrl(TestUser.ADMIN);
- }
-
- private String connectionUrl(TestUser user) {
- return String.format("http://%s:%s@%s:11222", user.getUser(), user.getPassword(), hostAddress());
- }
-
private File getCliResource(String resource) {
Path dest = workingDir.toPath().resolve(resource);
File destFile = dest.toFile();
@@ -360,4 +297,9 @@
throw new IllegalStateException(e);
}
}
+
+ @Override
+ protected String protocol() {
+ return "http";
+ }
}
Index: server/tests/src/test/java/org/infinispan/server/cli/BaseCliIT.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/server/tests/src/test/java/org/infinispan/server/cli/BaseCliIT.java b/server/tests/src/test/java/org/infinispan/server/cli/BaseCliIT.java
new file mode 100644
--- /dev/null (date 1666032849439)
+++ b/server/tests/src/test/java/org/infinispan/server/cli/BaseCliIT.java (date 1666032849439)
@@ -0,0 +1,73 @@
+package org.infinispan.server.cli;
+
+import java.io.File;
+import java.util.Properties;
+
+import org.infinispan.commons.test.CommonsTestingUtil;
+import org.infinispan.commons.util.Util;
+import org.infinispan.server.test.api.TestUser;
+import org.infinispan.server.test.core.AeshTestConnection;
+import org.infinispan.server.test.core.Common;
+import org.infinispan.server.test.core.ServerRunMode;
+import org.infinispan.server.test.junit4.InfinispanServerRule;
+import org.infinispan.server.test.junit4.InfinispanServerRuleBuilder;
+import org.infinispan.server.test.junit4.InfinispanServerTestMethodRule;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.ClassRule;
+import org.junit.Rule;
+
+public abstract class BaseCliIT {
+
+ @ClassRule
+ public static InfinispanServerRule SERVERS =
+ InfinispanServerRuleBuilder.config("configuration/AuthorizationImplicitTest.xml")
+ .mavenArtifacts(Common.NASHORN_DEPS)
+ .runMode(ServerRunMode.CONTAINER)
+ .build();
+
+ @Rule
+ public InfinispanServerTestMethodRule SERVER_TEST = new InfinispanServerTestMethodRule(SERVERS);
+
+ protected static File workingDir;
+ protected static Properties properties;
+
+ @BeforeClass
+ public static void setup() {
+ workingDir = new File(CommonsTestingUtil.tmpDirectory(HttpCliIT.class));
+ Util.recursiveFileRemove(workingDir);
+ workingDir.mkdirs();
+ properties = new Properties(System.getProperties());
+ properties.put("cli.dir", workingDir.getAbsolutePath());
+ }
+
+ @AfterClass
+ public static void teardown() {
+ Util.recursiveFileRemove(workingDir);
+ }
+
+ protected void connect(AeshTestConnection terminal) {
+ connect(terminal, TestUser.ADMIN);
+ }
+
+ protected void connect(AeshTestConnection terminal, TestUser user) {
+ // connect
+ terminal.send("connect -u " + user.getUser() + " -p " + user.getPassword() + " " + connectionUrl());
+ terminal.assertContains("//containers/default]>");
+ terminal.clear();
+ }
+
+ protected String hostAddress() {
+ return SERVERS.getTestServer().getDriver().getServerAddress(0).getHostAddress();
+ }
+
+ protected String connectionUrl() {
+ return connectionUrl(TestUser.ADMIN);
+ }
+
+ protected String connectionUrl(TestUser user) {
+ return String.format("%s://%s:%s@%s:11222", protocol(), user.getUser(), user.getPassword(), hostAddress());
+ }
+
+ protected abstract String protocol();
+}
Index: server/tests/src/test/java/org/infinispan/server/cli/HotRodCliIT.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/server/tests/src/test/java/org/infinispan/server/cli/HotRodCliIT.java b/server/tests/src/test/java/org/infinispan/server/cli/HotRodCliIT.java
new file mode 100644
--- /dev/null (date 1666032849444)
+++ b/server/tests/src/test/java/org/infinispan/server/cli/HotRodCliIT.java (date 1666032849444)
@@ -0,0 +1,24 @@
+package org.infinispan.server.cli;
+
+import org.infinispan.cli.commands.CLI;
+import org.infinispan.cli.impl.AeshDelegatingShell;
+import org.infinispan.server.test.core.AeshTestConnection;
+import org.junit.Test;
+
+public class HotRodCliIT extends BaseCliIT {
+
+ @Test
+ public void testHotRod() {
+ try (AeshTestConnection terminal = new AeshTestConnection()) {
+ CLI.main(new AeshDelegatingShell(terminal), new String[]{}, properties);
+
+ connect(terminal);
+ terminal.send("stats");
+ }
+ }
+
+ @Override
+ protected String protocol() {
+ return "hotrod";
+ }
+}