This is an automated email from the ASF dual-hosted git repository.
dinglei pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
The following commit(s) were added to refs/heads/develop by this push:
new 8c59640 [RIP-10] modify test case of BrokerConsumeStatusSubCommand
(#983)
8c59640 is described below
commit 8c59640d6e5660cd80c0083d476dcd0f56a847cc
Author: hdchen <[email protected]>
AuthorDate: Tue May 14 16:53:06 2019 +0800
[RIP-10] modify test case of BrokerConsumeStatusSubCommand (#983)
---
.../broker/BrokerConsumeStatsSubCommad.java | 23 +++++++++++++++++++---
.../broker/BrokerConsumeStatsSubCommadTest.java | 12 ++++++++---
2 files changed, 29 insertions(+), 6 deletions(-)
diff --git
a/tools/src/main/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommad.java
b/tools/src/main/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommad.java
index aee2f6b..0dee6de 100644
---
a/tools/src/main/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommad.java
+++
b/tools/src/main/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommad.java
@@ -36,6 +36,24 @@ import org.apache.rocketmq.tools.command.SubCommandException;
public class BrokerConsumeStatsSubCommad implements SubCommand {
+ private DefaultMQAdminExt defaultMQAdminExt;
+
+ private DefaultMQAdminExt createMQAdminExt(RPCHook rpcHook) throws
SubCommandException {
+ if (this.defaultMQAdminExt != null) {
+ return defaultMQAdminExt;
+ } else {
+ defaultMQAdminExt = new DefaultMQAdminExt(rpcHook);
+
defaultMQAdminExt.setInstanceName(Long.toString(System.currentTimeMillis()));
+ try {
+ defaultMQAdminExt.start();
+ }
+ catch (Exception e) {
+ throw new SubCommandException(this.getClass().getSimpleName()
+ " command failed", e);
+ }
+ return defaultMQAdminExt;
+ }
+ }
+
@Override
public String commandName() {
return "brokerConsumeStats";
@@ -69,10 +87,9 @@ public class BrokerConsumeStatsSubCommad implements
SubCommand {
@Override
public void execute(CommandLine commandLine, Options options, RPCHook
rpcHook) throws SubCommandException {
- DefaultMQAdminExt defaultMQAdminExt = new DefaultMQAdminExt(rpcHook);
-
defaultMQAdminExt.setInstanceName(Long.toString(System.currentTimeMillis()));
try {
- defaultMQAdminExt.start();
+ defaultMQAdminExt = createMQAdminExt(rpcHook);
+
String brokerAddr = commandLine.getOptionValue('b').trim();
boolean isOrder = false;
long timeoutMillis = 50000;
diff --git
a/tools/src/test/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommadTest.java
b/tools/src/test/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommadTest.java
index 48e6515..1089c1b 100644
---
a/tools/src/test/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommadTest.java
+++
b/tools/src/test/java/org/apache/rocketmq/tools/command/broker/BrokerConsumeStatsSubCommadTest.java
@@ -49,6 +49,9 @@ import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
public class BrokerConsumeStatsSubCommadTest {
+
+ private static BrokerConsumeStatsSubCommad cmd = new
BrokerConsumeStatsSubCommad();
+
private static DefaultMQAdminExt defaultMQAdminExt;
private static DefaultMQAdminExtImpl defaultMQAdminExtImpl;
private static MQClientInstance mqClientInstance =
MQClientManager.getInstance().getAndCreateMQClientInstance(new ClientConfig());
@@ -81,10 +84,13 @@ public class BrokerConsumeStatsSubCommadTest {
public static void terminate() {
}
- @Ignore
@Test
- public void testExecute() throws SubCommandException {
- BrokerConsumeStatsSubCommad cmd = new BrokerConsumeStatsSubCommad();
+ public void testExecute() throws SubCommandException,
IllegalAccessException, NoSuchFieldException {
+
+ Field field =
BrokerConsumeStatsSubCommad.class.getDeclaredField("defaultMQAdminExt");
+ field.setAccessible(true);
+ field.set(cmd, defaultMQAdminExt);
+
Options options = ServerUtil.buildCommandlineOptions(new Options());
String[] subargs = new String[] {"-b 127.0.0.1:10911", "-t 3000", "-l
5", "-o true"};
final CommandLine commandLine =