You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by je...@apache.org on 2019/05/30 14:10:39 UTC
[geode] branch develop updated: GEODE-6765: Gfsh list* commands do
not return error when no results found (#3634)
This is an automated email from the ASF dual-hosted git repository.
jensdeppe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/develop by this push:
new 47e44ff GEODE-6765: Gfsh list* commands do not return error when no results found (#3634)
47e44ff is described below
commit 47e44ff2a5bfd021c90d25a50595a119dba85db7
Author: Jens Deppe <jd...@pivotal.io>
AuthorDate: Thu May 30 07:10:14 2019 -0700
GEODE-6765: Gfsh list* commands do not return error when no results found (#3634)
- This also includes not returning an error when no members are found to
execute against.
Authored-by: Jens Deppe <jd...@pivotal.io>
---
.../ListAsyncEventQueuesCommandDUnitTest.java | 12 +++++--
.../internal/cli/commands/ListRegionDUnitTest.java | 7 ++++
.../geode/management/internal/cli/CliUtil.java | 2 +-
.../cli/commands/ListAsyncEventQueuesCommand.java | 2 +-
.../internal/cli/commands/ListClientCommand.java | 4 +--
.../internal/cli/commands/ListDeployedCommand.java | 2 +-
.../cli/commands/ListDurableClientCQsCommand.java | 4 +--
.../internal/cli/commands/ListFunctionCommand.java | 2 +-
.../internal/cli/commands/ListGatewayCommand.java | 4 +--
.../internal/cli/commands/ListRegionCommand.java | 2 +-
.../cli/functions/ListDurableCqNamesFunction.java | 8 ++---
.../geode/management/internal/cli/shell/Gfsh.java | 6 ++--
.../cli/commands/ListAsyncEventQueuesTest.java | 2 +-
.../commands/DurableClientCommandsDUnitTest.java | 12 ++++---
.../cli/commands/ListClientCommandDUnitTest.java | 39 +++++++++++++++-------
.../test/junit/assertions/CommandResultAssert.java | 4 ++-
.../DestroyGatewaySenderCommandDUnitTest.java | 4 +--
.../wancommand/ListGatewaysCommandDUnitTest.java | 2 +-
.../internal/cli/commands/CommandOverHttpTest.java | 2 +-
19 files changed, 76 insertions(+), 44 deletions(-)
diff --git a/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommandDUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommandDUnitTest.java
index cb197e9..0d673f4 100644
--- a/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommandDUnitTest.java
+++ b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommandDUnitTest.java
@@ -51,9 +51,6 @@ public class ListAsyncEventQueuesCommandDUnitTest {
@Test
public void list() {
- gfsh.executeAndAssertThat("list async-event-queue").statusIsSuccess()
- .containsOutput(CliStrings.LIST_ASYNC_EVENT_QUEUES__NO_QUEUES_FOUND_MESSAGE);
-
gfsh.executeAndAssertThat("create async-event-queue --id=queue1 --group=group1 --listener="
+ MyAsyncEventListener.class.getName()).statusIsSuccess();
@@ -78,5 +75,14 @@ public class ListAsyncEventQueuesCommandDUnitTest {
.tableHasRowWithValues("Member", "ID", "server-1", "queue")
.tableHasRowWithValues("Member", "ID", "server-2", "queue");
+ gfsh.executeAndAssertThat("destroy async-event-queue --id=queue").statusIsSuccess();
+ gfsh.executeAndAssertThat("destroy async-event-queue --id=queue1").statusIsSuccess();
+ gfsh.executeAndAssertThat("destroy async-event-queue --id=queue2").statusIsSuccess();
+ }
+
+ @Test
+ public void ensureNoResultIsSuccess() {
+ gfsh.executeAndAssertThat("list async-event-queue").statusIsSuccess()
+ .containsOutput(CliStrings.LIST_ASYNC_EVENT_QUEUES__NO_QUEUES_FOUND_MESSAGE);
}
}
diff --git a/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListRegionDUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListRegionDUnitTest.java
index 4f3fe6a..f1558cd 100644
--- a/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListRegionDUnitTest.java
+++ b/geode-core/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListRegionDUnitTest.java
@@ -123,6 +123,13 @@ public class ListRegionDUnitTest {
REGION2, REGION3, SUBREGION1A);
}
+ @Test
+ public void listNoMembersIsSuccess() {
+ CommandStringBuilder csb = new CommandStringBuilder(LIST_REGION);
+ csb.addOption(GROUP, "unknown");
+ gfsh.executeAndAssertThat(csb.toString()).statusIsSuccess();
+ }
+
private static void createLocalRegion(final String regionName) {
final Cache cache = CacheFactory.getAnyInstance();
// Create the data region
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/CliUtil.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/CliUtil.java
index 2ebc70b..c21a15b 100755
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/CliUtil.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/CliUtil.java
@@ -551,7 +551,7 @@ public class CliUtil {
null, workingDir);
p.waitFor();
} catch (IOException | InterruptedException e) {
- Gfsh.printlnErr(e.getMessage());
+ Gfsh.println(e.getMessage());
} finally {
if (file != null)
file.delete();
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommand.java
index 7fe29d0..7950dbb 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesCommand.java
@@ -48,7 +48,7 @@ public class ListAsyncEventQueuesCommand extends GfshCommand {
public ResultModel listAsyncEventQueues() {
Set<DistributedMember> targetMembers = getAllNormalMembers();
if (targetMembers.isEmpty()) {
- return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createInfo(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
// Each (successful) member returns a list of AsyncEventQueueDetails.
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListClientCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListClientCommand.java
index d7251c4..5861d2c 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListClientCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListClientCommand.java
@@ -51,7 +51,7 @@ public class ListClientCommand extends GfshCommand {
ObjectName[] cacheServers = service.getDistributedSystemMXBean().listCacheServerObjectNames();
if (cacheServers.length == 0) {
- return ResultModel.createError(
+ return ResultModel.createInfo(
CliStrings.format(CliStrings.LIST_CLIENT_COULD_NOT_RETRIEVE_SERVER_LIST));
}
@@ -81,7 +81,7 @@ public class ListClientCommand extends GfshCommand {
}
if (clientServerMap.size() == 0) {
- return ResultModel.createError(
+ return ResultModel.createInfo(
CliStrings.format(CliStrings.LIST_COULD_NOT_RETRIEVE_CLIENT_LIST));
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDeployedCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDeployedCommand.java
index 4b54e61..b8442d0 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDeployedCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDeployedCommand.java
@@ -51,7 +51,7 @@ public class ListDeployedCommand extends GfshCommand {
Set<DistributedMember> targetMembers = findMembers(group, null);
if (targetMembers.isEmpty()) {
- return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createInfo(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
ResultModel result = new ResultModel();
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDurableClientCQsCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDurableClientCQsCommand.java
index 74ad720..0ced065 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDurableClientCQsCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListDurableClientCQsCommand.java
@@ -56,7 +56,7 @@ public class ListDurableClientCQsCommand extends GfshCommand {
Set<DistributedMember> targetMembers = findMembers(group, memberNameOrId);
if (targetMembers.isEmpty()) {
- return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createInfo(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
final ResultCollector<?, ?> rc =
@@ -72,7 +72,7 @@ public class ListDurableClientCQsCommand extends GfshCommand {
table.accumulate("Status", oneResult.getStatus());
table.accumulate("CQ Name", oneResult.getStatusMessage());
- if (!oneResult.isSuccessful()) {
+ if (!(oneResult.isSuccessful() || oneResult.isIgnorableFailure())) {
result.setStatus(Result.Status.ERROR);
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListFunctionCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListFunctionCommand.java
index c1388f2..a326d79 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListFunctionCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListFunctionCommand.java
@@ -53,7 +53,7 @@ public class ListFunctionCommand extends GfshCommand {
Set<DistributedMember> targetMembers = findMembers(groups, members);
if (targetMembers.isEmpty()) {
- return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createInfo(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
List<CliFunctionResult> results = executeAndGetFunctionResult(this.listFunctionFunction,
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListGatewayCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListGatewayCommand.java
index 6c2b1e3..4c4c319 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListGatewayCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListGatewayCommand.java
@@ -62,7 +62,7 @@ public class ListGatewayCommand extends GfshCommand {
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
if (dsMembers.isEmpty()) {
- return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createInfo(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
Map<String, Map<String, GatewaySenderMXBean>> gatewaySenderBeans = new TreeMap<>();
@@ -104,7 +104,7 @@ public class ListGatewayCommand extends GfshCommand {
}
}
if (gatewaySenderBeans.isEmpty() && gatewayReceiverBeans.isEmpty()) {
- return ResultModel.createError(CliStrings.GATEWAYS_ARE_NOT_AVAILABLE_IN_CLUSTER);
+ return ResultModel.createInfo(CliStrings.GATEWAYS_ARE_NOT_AVAILABLE_IN_CLUSTER);
}
accumulateListGatewayResult(result, gatewaySenderBeans, gatewayReceiverBeans);
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListRegionCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListRegionCommand.java
index 4e1f7df..d0bf4bc 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListRegionCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListRegionCommand.java
@@ -63,7 +63,7 @@ public class ListRegionCommand extends GfshCommand {
Set<DistributedMember> targetMembers = findMembers(group, memberNameOrId);
if (targetMembers.isEmpty()) {
- return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createInfo(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
TabularResultModel resultData = result.addTable("regionInfo");
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
index 546574a..e075989 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
@@ -68,28 +68,28 @@ public class ListDurableCqNamesFunction implements InternalFunction {
try {
CacheClientNotifier ccn = CacheClientNotifier.getInstance();
if (ccn == null) {
- results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.ERROR,
+ results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.IGNORABLE,
CliStrings.NO_CLIENT_FOUND));
return results;
}
CacheClientProxy ccp = ccn.getClientProxy(durableClientId);
if (ccp == null) {
- results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.ERROR,
+ results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.IGNORABLE,
CliStrings.format(CliStrings.NO_CLIENT_FOUND_WITH_CLIENT_ID, durableClientId)));
return results;
}
CqService cqService = ccp.getCache().getCqService();
if (cqService == null || !cqService.isRunning()) {
- results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.ERROR,
+ results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.IGNORABLE,
CliStrings.LIST_DURABLE_CQS__NO__CQS__REGISTERED));
return results;
}
List<String> durableCqNames = cqService.getAllDurableClientCqs(ccp.getProxyID());
if (durableCqNames == null || durableCqNames.isEmpty()) {
- results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.ERROR,
+ results.add(new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.IGNORABLE,
CliStrings
.format(CliStrings.LIST_DURABLE_CQS__NO__CQS__FOR__CLIENT, durableClientId)));
return results;
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/shell/Gfsh.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/shell/Gfsh.java
index d1d4419..9db81a5 100755
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/shell/Gfsh.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/shell/Gfsh.java
@@ -272,15 +272,15 @@ public class Gfsh extends JLineShell {
gfshout.println();
}
- public static <T> void println(T toPrint) {
+ public static void println(Object toPrint) {
gfshout.println(toPrint);
}
- public static <T> void print(T toPrint) {
+ public static void print(Object toPrint) {
gfshout.print(toPrint);
}
- public static <T> void printlnErr(T toPrint) {
+ public static void printlnErr(Object toPrint) {
gfsherr.println(toPrint);
}
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesTest.java
index 56ab979..49a1faa 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ListAsyncEventQueuesTest.java
@@ -66,7 +66,7 @@ public class ListAsyncEventQueuesTest {
doReturn(Collections.emptySet()).when(command).getAllNormalMembers();
// Command should succeed with one row of data
- gfsh.executeAndAssertThat(command, COMMAND).statusIsError()
+ gfsh.executeAndAssertThat(command, COMMAND).statusIsSuccess()
.containsOutput(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
diff --git a/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DurableClientCommandsDUnitTest.java b/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DurableClientCommandsDUnitTest.java
index e2ef798..4b85b01 100644
--- a/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DurableClientCommandsDUnitTest.java
+++ b/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/DurableClientCommandsDUnitTest.java
@@ -121,8 +121,9 @@ public class DurableClientCommandsDUnitTest {
csb.addOption(CliStrings.LIST_DURABLE_CQS__DURABLECLIENTID, CLIENT_NAME);
commandString = csb.toString();
- gfsh.executeAndAssertThat(commandString).statusIsError()
+ gfsh.executeAndAssertThat(commandString).statusIsSuccess()
.hasTableSection()
+ .hasColumn("Status").containsExactly("IGNORED", "IGNORED")
.hasColumn("CQ Name")
.containsExactlyInAnyOrder(
CliStrings.format(CliStrings.LIST_DURABLE_CQS__NO__CQS__FOR__CLIENT, CLIENT_NAME),
@@ -135,10 +136,10 @@ public class DurableClientCommandsDUnitTest {
csb.addOption(CliStrings.LIST_DURABLE_CQS__DURABLECLIENTID, CLIENT_NAME);
String commandString = csb.toString();
- gfsh.executeAndAssertThat(commandString).statusIsError()
+ gfsh.executeAndAssertThat(commandString).statusIsSuccess()
.hasTableSection()
- .hasColumn("CQ Name")
- .containsExactlyInAnyOrder(
+ .hasColumn("Status").containsExactlyInAnyOrder("IGNORED", "IGNORED")
+ .hasColumn("CQ Name").containsExactlyInAnyOrder(
CliStrings.format(CliStrings.NO_CLIENT_FOUND_WITH_CLIENT_ID, CLIENT_NAME),
CliStrings.format(CliStrings.NO_CLIENT_FOUND_WITH_CLIENT_ID, CLIENT_NAME));
}
@@ -151,8 +152,9 @@ public class DurableClientCommandsDUnitTest {
csb.addOption(CliStrings.LIST_DURABLE_CQS__DURABLECLIENTID, CLIENT_NAME);
String commandString = csb.toString();
- gfsh.executeAndAssertThat(commandString).statusIsError()
+ gfsh.executeAndAssertThat(commandString).statusIsSuccess()
.hasTableSection()
+ .hasColumn("Status").containsExactlyInAnyOrder("IGNORED", "OK", "OK", "OK")
.hasColumn("CQ Name")
.containsExactlyInAnyOrder("cq1", "cq2", "cq3", "No client found with client-id : dc1");
diff --git a/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListClientCommandDUnitTest.java b/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListClientCommandDUnitTest.java
index a0dbcc8..60797c9 100644
--- a/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListClientCommandDUnitTest.java
+++ b/geode-cq/src/distributedTest/java/org/apache/geode/management/internal/cli/commands/ListClientCommandDUnitTest.java
@@ -22,8 +22,8 @@ import java.util.Map;
import java.util.Properties;
import org.apache.commons.lang3.exception.ExceptionUtils;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
+import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
@@ -43,11 +43,11 @@ import org.apache.geode.test.junit.rules.GfshCommandRule;
@Category({GfshTest.class})
public class ListClientCommandDUnitTest {
- @ClassRule
- public static ClusterStartupRule cluster = new ClusterStartupRule(6);
+ @Rule
+ public ClusterStartupRule cluster = new ClusterStartupRule(6);
- @ClassRule
- public static GfshCommandRule gfsh = new GfshCommandRule();
+ @Rule
+ public GfshCommandRule gfsh = new GfshCommandRule();
private static final String REGION_NAME = "stocks";
@@ -57,22 +57,36 @@ public class ListClientCommandDUnitTest {
private static ClientVM client1, client2;
- @BeforeClass
- public static void setup() throws Exception {
+ @Before
+ public void setup() throws Exception {
locator = cluster.startLocatorVM(locatorID);
- int locatorPort = locator.getPort();
+
+ gfsh.connectAndVerify(locator);
+ }
+
+ private void startServers(MemberVM locator) {
server1 = cluster.startServerVM(server1ID,
r -> r.withRegion(RegionShortcut.REPLICATE, REGION_NAME)
- .withConnectionToLocator(locatorPort));
+ .withConnectionToLocator(locator.getPort()));
server2 = cluster.startServerVM(server2ID,
r -> r.withRegion(RegionShortcut.REPLICATE, REGION_NAME)
- .withConnectionToLocator(locatorPort));
+ .withConnectionToLocator(locator.getPort()));
+ }
- gfsh.connectAndVerify(locator);
+ @Test
+ public void noResultIsSuccess() {
+ startServers(locator);
+ gfsh.executeAndAssertThat("list clients").statusIsSuccess();
+ }
+
+ @Test
+ public void noMembersIsSuccess() {
+ gfsh.executeAndAssertThat("list clients").statusIsSuccess();
}
@Test
public void testTwoClientsConnectToOneServer() throws Exception {
+ startServers(locator);
int server1port = server1.getPort();
Properties client1props = new Properties();
client1props.setProperty("name", "client-1");
@@ -123,6 +137,7 @@ public class ListClientCommandDUnitTest {
@Test
public void oneClientConnectToTwoServers() throws Exception {
+ startServers(locator);
int server1port = server1.getPort();
int server2port = server2.getPort();
Properties client1props = new Properties();
diff --git a/geode-junit/src/main/java/org/apache/geode/test/junit/assertions/CommandResultAssert.java b/geode-junit/src/main/java/org/apache/geode/test/junit/assertions/CommandResultAssert.java
index c489403..a6d1c54 100644
--- a/geode-junit/src/main/java/org/apache/geode/test/junit/assertions/CommandResultAssert.java
+++ b/geode-junit/src/main/java/org/apache/geode/test/junit/assertions/CommandResultAssert.java
@@ -281,7 +281,9 @@ public class CommandResultAssert
// convenience method to get the first table section. if more than one table section
// use the sectionName to get it
public TabularResultModelAssert hasTableSection() {
- return new TabularResultModelAssert(getResultModel().getTableSections().get(0));
+ List<TabularResultModel> table = getResultModel().getTableSections();
+ assertThat(table.size()).isGreaterThan(0);
+ return new TabularResultModelAssert(table.get(0));
}
public TabularResultModelAssert hasTableSection(String sectionName) {
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java
index 82ee09e..a6e61f5 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java
@@ -82,7 +82,7 @@ public class DestroyGatewaySenderCommandDUnitTest {
locatorSite1.waitUntilGatewaySendersAreReadyOnExactlyThisManyServers(0);
- gfsh.executeAndAssertThat("list gateways").statusIsError()
+ gfsh.executeAndAssertThat("list gateways").statusIsSuccess()
.containsOutput("GatewaySenders or GatewayReceivers are not available in cluster");
}
@@ -100,7 +100,7 @@ public class DestroyGatewaySenderCommandDUnitTest {
locatorSite1.waitUntilGatewaySendersAreReadyOnExactlyThisManyServers(0);
- gfsh.executeAndAssertThat("list gateways").statusIsError()
+ gfsh.executeAndAssertThat("list gateways").statusIsSuccess()
.containsOutput("GatewaySenders or GatewayReceivers are not available in cluster");
}
}
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ListGatewaysCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ListGatewaysCommandDUnitTest.java
index b7a0943..9859f95 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ListGatewaysCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ListGatewaysCommandDUnitTest.java
@@ -89,7 +89,7 @@ public class ListGatewaysCommandDUnitTest implements Serializable {
locatorSite1.invoke(() -> validateMemberMXBeanProxy(getMember(server3.getVM())));
String command = CliStrings.LIST_GATEWAY;
- gfsh.executeAndAssertThat(command).statusIsError();
+ gfsh.executeAndAssertThat(command).statusIsSuccess();
}
@Test
diff --git a/geode-web/src/integrationTest/java/org/apache/geode/management/internal/cli/commands/CommandOverHttpTest.java b/geode-web/src/integrationTest/java/org/apache/geode/management/internal/cli/commands/CommandOverHttpTest.java
index 9162d04..b7e8ed3 100644
--- a/geode-web/src/integrationTest/java/org/apache/geode/management/internal/cli/commands/CommandOverHttpTest.java
+++ b/geode-web/src/integrationTest/java/org/apache/geode/management/internal/cli/commands/CommandOverHttpTest.java
@@ -54,7 +54,7 @@ public class CommandOverHttpTest {
@Test
public void testListClient() throws Exception {
gfshRule.executeAndAssertThat("list clients")
- .statusIsError()
+ .statusIsSuccess()
.hasInfoSection().hasOutput()
.isEqualTo("No clients were retrieved for cache-servers.");
}