From 19cbce3898aeee7dd3b46e2c2ffeae25ff6ba88f Mon Sep 17 00:00:00 2001 From: Junping Du Date: Sun, 18 Jan 2015 23:08:06 -0800 Subject: [PATCH] YARN-3070. TestRMAdminCLI#testHelp fails for transitionToActive command. (Contributed by Junping Du) --- hadoop-yarn-project/CHANGES.txt | 3 +++ .../yarn/client/cli/TestRMAdminCLI.java | 26 ++++++++++++------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 99076ec7f41..5aca9962f98 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -382,6 +382,9 @@ Release 2.7.0 - UNRELEASED YARN-2815. Excluded transitive dependency of JLine in hadoop-yarn-server-common. (Ferdinand Xu via zjshen) + YARN-3070. TestRMAdminCLI#testHelp fails for transitionToActive command. + (Contributed by Junping Du) + Release 2.6.0 - 2014-11-18 INCOMPATIBLE CHANGES diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java index 73c3795895f..92af27dc692 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java @@ -333,8 +333,8 @@ public class TestRMAdminCLI { testError(new String[] { "-help", "-getGroups" }, "Usage: yarn rmadmin [-getGroups [username]]", dataErr, 0); testError(new String[] { "-help", "-transitionToActive" }, - "Usage: yarn rmadmin [-transitionToActive " + - " [--forceactive]]", dataErr, 0); + "Usage: yarn rmadmin [-transitionToActive [--forceactive]" + + " ]", dataErr, 0); testError(new String[] { "-help", "-transitionToStandby" }, "Usage: yarn rmadmin [-transitionToStandby ]", dataErr, 0); testError(new String[] { "-help", "-getServiceState" }, @@ -355,19 +355,21 @@ public class TestRMAdminCLI { // Test -help when RM HA is enabled assertEquals(0, rmAdminCLIWithHAEnabled.run(args)); oldOutPrintStream.println(dataOut); - assertTrue(dataOut - .toString() - .contains( - "yarn rmadmin [-refreshQueues] [-refreshNodes] [-refreshSuper" + + String expectedHelpMsg = + "yarn rmadmin [-refreshQueues] [-refreshNodes] [-refreshSuper" + "UserGroupsConfiguration] [-refreshUserToGroupsMappings] " + "[-refreshAdminAcls] [-refreshServiceAcl] [-getGroup" + " [username]] [[-addToClusterNodeLabels [label1,label2,label3]]" + " [-removeFromClusterNodeLabels [label1,label2,label3]] [-replaceLabelsOnNode " + "[node1:port,label1,label2 node2:port,label1] [-directlyAccessNodeLabelStore]] " + - "[-transitionToActive [--forceactive]] " + + "[-transitionToActive [--forceactive] ] " + "[-transitionToStandby ] [-failover" + " [--forcefence] [--forceactive] ] " + - "[-getServiceState ] [-checkHealth ] [-help [cmd]]")); + "[-getServiceState ] [-checkHealth ] [-help [cmd]]"; + String actualHelpMsg = dataOut.toString(); + assertTrue(String.format("Help messages: %n " + actualHelpMsg + " %n doesn't include expected " + + "messages: %n" + expectedHelpMsg), actualHelpMsg.contains(expectedHelpMsg + )); } finally { System.setOut(oldOutPrintStream); System.setErr(oldErrPrintStream); @@ -543,8 +545,12 @@ public class TestRMAdminCLI { private void testError(String[] args, String template, ByteArrayOutputStream data, int resultCode) throws Exception { - assertEquals(resultCode, rmAdminCLI.run(args)); - assertTrue(data.toString().contains(template)); + int actualResultCode = rmAdminCLI.run(args); + assertEquals("Expected result code: " + resultCode + + ", actual result code is: " + actualResultCode, resultCode, actualResultCode); + assertTrue(String.format("Expected error message: %n" + template + + " is not included in messages: %n" + data.toString()), + data.toString().contains(template)); data.reset(); }