Repository: flink
Updated Branches:
  refs/heads/release-1.5 341a3fd8e -> 0ba8ed6ba


[FLINK-8906][flip6][tests] also test Flip6DefaultCLI in 
org.apache.flink.client.cli tests

This closes #5671.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/0ba8ed6b
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/0ba8ed6b
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/0ba8ed6b

Branch: refs/heads/release-1.5
Commit: 0ba8ed6ba8b2f17de79e05207dc14226504b8be9
Parents: 76b0eb6
Author: Nico Kruber <[email protected]>
Authored: Thu Mar 8 11:07:08 2018 +0100
Committer: Till Rohrmann <[email protected]>
Committed: Mon Mar 19 16:54:15 2018 +0100

----------------------------------------------------------------------
 .../flink/client/cli/CliFrontendCancelTest.java | 19 +++---
 .../flink/client/cli/CliFrontendInfoTest.java   | 19 +++---
 .../flink/client/cli/CliFrontendListTest.java   |  7 +--
 .../flink/client/cli/CliFrontendModifyTest.java | 10 ++--
 .../flink/client/cli/CliFrontendRunTest.java    | 50 +++++++++-------
 .../client/cli/CliFrontendSavepointTest.java    | 15 +++--
 .../flink/client/cli/CliFrontendStopTest.java   | 11 ++--
 .../flink/client/cli/CliFrontendTestBase.java   | 61 ++++++++++++++++++++
 .../apache/flink/client/cli/DefaultCLITest.java | 24 +++++---
 9 files changed, 144 insertions(+), 72 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendCancelTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendCancelTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendCancelTest.java
index 837c564..638150a 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendCancelTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendCancelTest.java
@@ -22,7 +22,6 @@ import org.apache.flink.api.common.JobID;
 import org.apache.flink.client.cli.util.MockedCliFrontend;
 import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.configuration.Configuration;
-import org.apache.flink.util.TestLogger;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -40,7 +39,7 @@ import static org.mockito.Mockito.times;
 /**
  * Tests for the CANCEL command.
  */
-public class CliFrontendCancelTest extends TestLogger {
+public class CliFrontendCancelTest extends CliFrontendTestBase {
 
        @BeforeClass
        public static void init() {
@@ -69,20 +68,20 @@ public class CliFrontendCancelTest extends TestLogger {
        @Test(expected = CliArgsException.class)
        public void testMissingJobId() throws Exception {
                String[] parameters = {};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.cancel(parameters);
        }
 
        @Test(expected = CliArgsException.class)
        public void testUnrecognizedOption() throws Exception {
                String[] parameters = {"-v", "-l"};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.cancel(parameters);
        }
 
@@ -122,10 +121,10 @@ public class CliFrontendCancelTest extends TestLogger {
        public void testCancelWithSavepointWithoutJobId() throws Exception {
                // Cancel with savepoint (with target directory), but no job ID
                String[] parameters = { "-s", "targetDirectory" };
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.cancel(parameters);
        }
 
@@ -133,10 +132,10 @@ public class CliFrontendCancelTest extends TestLogger {
        public void testCancelWithSavepointWithoutParameters() throws Exception 
{
                // Cancel with savepoint (no target directory) and no job ID
                String[] parameters = { "-s" };
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.cancel(parameters);
        }
 

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendInfoTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendInfoTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendInfoTest.java
index c284c61..47c799e 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendInfoTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendInfoTest.java
@@ -19,7 +19,6 @@
 package org.apache.flink.client.cli;
 
 import org.apache.flink.configuration.Configuration;
-import org.apache.flink.util.TestLogger;
 
 import org.junit.Test;
 
@@ -33,7 +32,7 @@ import static org.junit.Assert.fail;
 /**
  * Tests for the "info" command.
  */
-public class CliFrontendInfoTest extends TestLogger {
+public class CliFrontendInfoTest extends CliFrontendTestBase {
 
        private static PrintStream stdOut;
        private static PrintStream capture;
@@ -42,20 +41,20 @@ public class CliFrontendInfoTest extends TestLogger {
        @Test(expected = CliArgsException.class)
        public void testMissingOption() throws Exception {
                String[] parameters = {};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.cancel(parameters);
        }
 
        @Test(expected = CliArgsException.class)
        public void testUnrecognizedOption() throws Exception {
                String[] parameters = {"-v", "-l"};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.cancel(parameters);
        }
 
@@ -65,10 +64,10 @@ public class CliFrontendInfoTest extends TestLogger {
                try {
 
                        String[] parameters = new 
String[]{CliFrontendTestUtils.getTestJarPath(), "-f", "true"};
-                       Configuration configuration = new Configuration();
+                       Configuration configuration = getConfiguration();
                        CliFrontend testFrontend = new CliFrontend(
                                configuration,
-                               Collections.singletonList(new 
DefaultCLI(configuration)));
+                               
Collections.singletonList(getCli(configuration)));
                        testFrontend.info(parameters);
                        assertTrue(buffer.toString().contains("\"parallelism\": 
\"1\""));
                }
@@ -82,10 +81,10 @@ public class CliFrontendInfoTest extends TestLogger {
                replaceStdOut();
                try {
                        String[] parameters = {"-p", "17", 
CliFrontendTestUtils.getTestJarPath()};
-                       Configuration configuration = new Configuration();
+                       Configuration configuration = getConfiguration();
                        CliFrontend testFrontend = new CliFrontend(
                                configuration,
-                               Collections.singletonList(new 
DefaultCLI(configuration)));
+                               
Collections.singletonList(getCli(configuration)));
                        testFrontend.info(parameters);
                        assertTrue(buffer.toString().contains("\"parallelism\": 
\"17\""));
                }

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendListTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendListTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendListTest.java
index 42399cb..a8a7f00 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendListTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendListTest.java
@@ -21,7 +21,6 @@ package org.apache.flink.client.cli;
 import org.apache.flink.client.cli.util.MockedCliFrontend;
 import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.configuration.Configuration;
-import org.apache.flink.util.TestLogger;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -38,7 +37,7 @@ import static org.mockito.Mockito.when;
 /**
  * Tests for the LIST command.
  */
-public class CliFrontendListTest extends TestLogger {
+public class CliFrontendListTest extends CliFrontendTestBase {
 
        @BeforeClass
        public static void init() {
@@ -66,10 +65,10 @@ public class CliFrontendListTest extends TestLogger {
        @Test(expected = CliArgsException.class)
        public void testUnrecognizedOption() throws Exception {
                String[] parameters = {"-v", "-k"};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.list(parameters);
        }
 

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendModifyTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendModifyTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendModifyTest.java
index 00d5241..a2d6c48 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendModifyTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendModifyTest.java
@@ -25,7 +25,6 @@ import 
org.apache.flink.client.program.StandaloneClusterClient;
 import org.apache.flink.configuration.Configuration;
 import 
org.apache.flink.runtime.highavailability.TestingHighAvailabilityServices;
 import org.apache.flink.runtime.messages.Acknowledge;
-import org.apache.flink.util.TestLogger;
 
 import org.hamcrest.Matchers;
 import org.junit.Test;
@@ -38,7 +37,7 @@ import static org.junit.Assert.fail;
 /**
  * Tests for the modify command.
  */
-public class CliFrontendModifyTest extends TestLogger {
+public class CliFrontendModifyTest extends CliFrontendTestBase {
 
        @Test
        public void testModifyJob() throws Exception {
@@ -106,7 +105,7 @@ public class CliFrontendModifyTest extends TestLogger {
 
        private Tuple2<JobID, Integer> callModify(String[] args) throws 
Exception {
                final CompletableFuture<Tuple2<JobID, Integer>> 
rescaleJobFuture = new CompletableFuture<>();
-               final TestingClusterClient clusterClient = new 
TestingClusterClient(rescaleJobFuture);
+               final TestingClusterClient clusterClient = new 
TestingClusterClient(rescaleJobFuture, getConfiguration());
                final MockedCliFrontend cliFrontend = new 
MockedCliFrontend(clusterClient);
 
                cliFrontend.modify(args);
@@ -120,8 +119,9 @@ public class CliFrontendModifyTest extends TestLogger {
 
                private final CompletableFuture<Tuple2<JobID, Integer>> 
rescaleJobFuture;
 
-               public TestingClusterClient(CompletableFuture<Tuple2<JobID, 
Integer>> rescaleJobFuture) throws Exception {
-                       super(new Configuration(), new 
TestingHighAvailabilityServices(), false);
+               TestingClusterClient(
+                       CompletableFuture<Tuple2<JobID, Integer>> 
rescaleJobFuture, Configuration configuration) {
+                       super(configuration, new 
TestingHighAvailabilityServices(), false);
 
                        this.rescaleJobFuture = rescaleJobFuture;
                }

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendRunTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendRunTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendRunTest.java
index c7789a8..efa6a39 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendRunTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendRunTest.java
@@ -21,9 +21,7 @@ package org.apache.flink.client.cli;
 import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.client.program.PackagedProgram;
 import org.apache.flink.configuration.Configuration;
-import org.apache.flink.configuration.GlobalConfiguration;
 import org.apache.flink.runtime.jobgraph.SavepointRestoreSettings;
-import org.apache.flink.util.TestLogger;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -39,7 +37,7 @@ import static org.junit.Assert.assertTrue;
 /**
  * Tests for the RUN command.
  */
-public class CliFrontendRunTest extends TestLogger {
+public class CliFrontendRunTest extends CliFrontendTestBase {
 
        @BeforeClass
        public static void init() {
@@ -53,33 +51,29 @@ public class CliFrontendRunTest extends TestLogger {
 
        @Test
        public void testRun() throws Exception {
-               final Configuration configuration = 
GlobalConfiguration.loadConfiguration(CliFrontendTestUtils.getConfigDir());
+               final Configuration configuration = getConfiguration();
                // test without parallelism
                {
                        String[] parameters = {"-v", getTestJarPath()};
-                       RunTestingCliFrontend testFrontend = new 
RunTestingCliFrontend(configuration, 1, true, false);
-                       testFrontend.run(parameters);
+                       verifyCliFrontend(getCli(configuration), parameters, 1, 
true, false);
                }
 
                // test configure parallelism
                {
                        String[] parameters = {"-v", "-p", "42",  
getTestJarPath()};
-                       RunTestingCliFrontend testFrontend = new 
RunTestingCliFrontend(configuration, 42, true, false);
-                       testFrontend.run(parameters);
+                       verifyCliFrontend(getCli(configuration), parameters, 
42, true, false);
                }
 
                // test configure sysout logging
                {
                        String[] parameters = {"-p", "2", "-q", 
getTestJarPath()};
-                       RunTestingCliFrontend testFrontend = new 
RunTestingCliFrontend(configuration, 2, false, false);
-                       testFrontend.run(parameters);
+                       verifyCliFrontend(getCli(configuration), parameters, 2, 
false, false);
                }
 
                // test detached mode
                {
                        String[] parameters = {"-p", "2", "-d", 
getTestJarPath()};
-                       RunTestingCliFrontend testFrontend = new 
RunTestingCliFrontend(configuration, 2, true, true);
-                       testFrontend.run(parameters);
+                       verifyCliFrontend(getCli(configuration), parameters, 2, 
true, true);
                }
 
                // test configure savepoint path (no ignore flag)
@@ -119,10 +113,10 @@ public class CliFrontendRunTest extends TestLogger {
        public void testUnrecognizedOption() throws Exception {
                // test unrecognized option
                String[] parameters = {"-v", "-l", "-a", "some", "program", 
"arguments"};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.run(parameters);
        }
 
@@ -130,10 +124,10 @@ public class CliFrontendRunTest extends TestLogger {
        public void testInvalidParallelismOption() throws Exception {
                // test configure parallelism with non integer value
                String[] parameters = {"-v", "-p", "text",  getTestJarPath()};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.run(parameters);
        }
 
@@ -144,22 +138,38 @@ public class CliFrontendRunTest extends TestLogger {
                Configuration configuration = new Configuration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.run(parameters);
        }
 
        // 
--------------------------------------------------------------------------------------------
 
+       private static void verifyCliFrontend(
+                       AbstractCustomCommandLine<?> cli,
+                       String[] parameters,
+                       int expectedParallelism,
+                       boolean logging,
+                       boolean isDetached) throws Exception {
+               RunTestingCliFrontend testFrontend =
+                       new RunTestingCliFrontend(cli, expectedParallelism, 
logging,
+                               isDetached);
+               testFrontend.run(parameters); // verifies the expected values 
(see below)
+       }
+
        private static final class RunTestingCliFrontend extends CliFrontend {
 
                private final int expectedParallelism;
                private final boolean sysoutLogging;
                private final boolean isDetached;
 
-               public RunTestingCliFrontend(Configuration configuration, int 
expectedParallelism, boolean logging, boolean isDetached) throws Exception {
+               private RunTestingCliFrontend(
+                               AbstractCustomCommandLine<?> cli,
+                               int expectedParallelism,
+                               boolean logging,
+                               boolean isDetached) throws Exception {
                        super(
-                               configuration,
-                               Collections.singletonList(new 
DefaultCLI(configuration)));
+                               cli.getConfiguration(),
+                               Collections.singletonList(cli));
                        this.expectedParallelism = expectedParallelism;
                        this.sysoutLogging = logging;
                        this.isDetached = isDetached;

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendSavepointTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendSavepointTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendSavepointTest.java
index f4c66eb..3195a6b 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendSavepointTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendSavepointTest.java
@@ -30,7 +30,6 @@ import org.apache.flink.runtime.messages.Acknowledge;
 import org.apache.flink.util.ExceptionUtils;
 import org.apache.flink.util.FlinkException;
 import org.apache.flink.util.Preconditions;
-import org.apache.flink.util.TestLogger;
 
 import org.hamcrest.Matchers;
 import org.junit.Rule;
@@ -61,7 +60,7 @@ import static org.mockito.Mockito.when;
 /**
  * Tests for the SAVEPOINT command.
  */
-public class CliFrontendSavepointTest extends TestLogger {
+public class CliFrontendSavepointTest extends CliFrontendTestBase {
 
        private static PrintStream stdOut;
        private static PrintStream stdErr;
@@ -137,7 +136,7 @@ public class CliFrontendSavepointTest extends TestLogger {
 
                try {
                        CliFrontend frontend = new MockedCliFrontend(new 
StandaloneClusterClient(
-                               new Configuration(),
+                               getConfiguration(),
                                new TestingHighAvailabilityServices(),
                                false));
 
@@ -197,7 +196,7 @@ public class CliFrontendSavepointTest extends TestLogger {
                String savepointPath = "expectedSavepointPath";
 
                ClusterClient clusterClient = new DisposeSavepointClusterClient(
-                       (String path, Time timeout) -> 
CompletableFuture.completedFuture(Acknowledge.get()));
+                       (String path, Time timeout) -> 
CompletableFuture.completedFuture(Acknowledge.get()), getConfiguration());
 
                try {
 
@@ -229,7 +228,7 @@ public class CliFrontendSavepointTest extends TestLogger {
                        (String savepointPath, Time timeout) -> {
                                disposeSavepointFuture.complete(savepointPath);
                                return 
CompletableFuture.completedFuture(Acknowledge.get());
-                       });
+                       }, getConfiguration());
 
                try {
                        CliFrontend frontend = new 
MockedCliFrontend(clusterClient);
@@ -261,7 +260,7 @@ public class CliFrontendSavepointTest extends TestLogger {
 
                Exception testException = new 
Exception("expectedTestException");
 
-               DisposeSavepointClusterClient clusterClient = new 
DisposeSavepointClusterClient((String path, Time timeout) -> 
FutureUtils.completedExceptionally(testException));
+               DisposeSavepointClusterClient clusterClient = new 
DisposeSavepointClusterClient((String path, Time timeout) -> 
FutureUtils.completedExceptionally(testException), getConfiguration());
 
                try {
                        CliFrontend frontend = new 
MockedCliFrontend(clusterClient);
@@ -288,8 +287,8 @@ public class CliFrontendSavepointTest extends TestLogger {
 
                private final BiFunction<String, Time, 
CompletableFuture<Acknowledge>> disposeSavepointFunction;
 
-               DisposeSavepointClusterClient(BiFunction<String, Time, 
CompletableFuture<Acknowledge>> disposeSavepointFunction) throws Exception {
-                       super(new Configuration(), new 
TestingHighAvailabilityServices(), false);
+               DisposeSavepointClusterClient(BiFunction<String, Time, 
CompletableFuture<Acknowledge>> disposeSavepointFunction, Configuration 
configuration) {
+                       super(configuration, new 
TestingHighAvailabilityServices(), false);
 
                        this.disposeSavepointFunction = 
Preconditions.checkNotNull(disposeSavepointFunction);
                }

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendStopTest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendStopTest.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendStopTest.java
index ec4ccdc..23bed00 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendStopTest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendStopTest.java
@@ -24,7 +24,6 @@ import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.util.ExceptionUtils;
 import org.apache.flink.util.FlinkException;
-import org.apache.flink.util.TestLogger;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -45,7 +44,7 @@ import static org.powermock.api.mockito.PowerMockito.doThrow;
 /**
  * Tests for the STOP command.
  */
-public class CliFrontendStopTest extends TestLogger {
+public class CliFrontendStopTest extends CliFrontendTestBase {
 
        @BeforeClass
        public static void setup() {
@@ -76,10 +75,10 @@ public class CliFrontendStopTest extends TestLogger {
        public void testUnrecognizedOption() throws Exception {
                // test unrecognized option
                String[] parameters = { "-v", "-l" };
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.stop(parameters);
        }
 
@@ -87,10 +86,10 @@ public class CliFrontendStopTest extends TestLogger {
        public void testMissingJobId() throws Exception {
                // test missing job id
                String[] parameters = {};
-               Configuration configuration = new Configuration();
+               Configuration configuration = getConfiguration();
                CliFrontend testFrontend = new CliFrontend(
                        configuration,
-                       Collections.singletonList(new 
DefaultCLI(configuration)));
+                       Collections.singletonList(getCli(configuration)));
                testFrontend.stop(parameters);
        }
 

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendTestBase.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendTestBase.java
 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendTestBase.java
new file mode 100644
index 0000000..e2463f2
--- /dev/null
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/CliFrontendTestBase.java
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.client.cli;
+
+import org.apache.flink.configuration.Configuration;
+import org.apache.flink.configuration.CoreOptions;
+import org.apache.flink.configuration.GlobalConfiguration;
+import org.apache.flink.util.TestLogger;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Base test class for {@link CliFrontend} tests that wraps the Flip-6 vs. 
non-Flip-6 modes.
+ */
+@RunWith(Parameterized.class)
+public abstract class CliFrontendTestBase extends TestLogger {
+       @Parameterized.Parameter
+       public String mode;
+
+       @Parameterized.Parameters(name = "Mode = {0}")
+       public static List<String> parameters() {
+               return Arrays.asList(CoreOptions.OLD_MODE, 
CoreOptions.FLIP6_MODE);
+       }
+
+       protected Configuration getConfiguration() {
+               final Configuration configuration = GlobalConfiguration
+                       .loadConfiguration(CliFrontendTestUtils.getConfigDir());
+               configuration.setString(CoreOptions.MODE, mode);
+               return configuration;
+       }
+
+       static AbstractCustomCommandLine<?> getCli(Configuration configuration) 
{
+               switch (configuration.getString(CoreOptions.MODE)) {
+                       case CoreOptions.OLD_MODE:
+                               return new DefaultCLI(configuration);
+                       case CoreOptions.FLIP6_MODE:
+                               return new Flip6DefaultCLI(configuration);
+               }
+               throw new IllegalStateException();
+       }
+}

http://git-wip-us.apache.org/repos/asf/flink/blob/0ba8ed6b/flink-clients/src/test/java/org/apache/flink/client/cli/DefaultCLITest.java
----------------------------------------------------------------------
diff --git 
a/flink-clients/src/test/java/org/apache/flink/client/cli/DefaultCLITest.java 
b/flink-clients/src/test/java/org/apache/flink/client/cli/DefaultCLITest.java
index d89e988..8402b7e 100644
--- 
a/flink-clients/src/test/java/org/apache/flink/client/cli/DefaultCLITest.java
+++ 
b/flink-clients/src/test/java/org/apache/flink/client/cli/DefaultCLITest.java
@@ -18,12 +18,12 @@
 
 package org.apache.flink.client.cli;
 
-import org.apache.flink.client.deployment.StandaloneClusterDescriptor;
+import org.apache.flink.client.deployment.ClusterDescriptor;
+import org.apache.flink.client.deployment.StandaloneClusterId;
 import org.apache.flink.client.program.ClusterClient;
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.configuration.JobManagerOptions;
 import org.apache.flink.runtime.util.LeaderConnectionInfo;
-import org.apache.flink.util.TestLogger;
 
 import org.apache.commons.cli.CommandLine;
 import org.hamcrest.Matchers;
@@ -36,7 +36,7 @@ import static org.junit.Assert.assertThat;
 /**
  * Tests for the {@link DefaultCLI}.
  */
-public class DefaultCLITest extends TestLogger {
+public class DefaultCLITest extends CliFrontendTestBase {
 
        @Rule
        public TemporaryFolder temporaryFolder = new TemporaryFolder();
@@ -47,7 +47,7 @@ public class DefaultCLITest extends TestLogger {
         */
        @Test
        public void testConfigurationPassing() throws Exception {
-               final Configuration configuration = new Configuration();
+               final Configuration configuration = getConfiguration();
 
                final String localhost = "localhost";
                final int port = 1234;
@@ -55,13 +55,16 @@ public class DefaultCLITest extends TestLogger {
                configuration.setString(JobManagerOptions.ADDRESS, localhost);
                configuration.setInteger(JobManagerOptions.PORT, port);
 
-               final DefaultCLI defaultCLI = new DefaultCLI(configuration);
+               @SuppressWarnings("unchecked")
+               final AbstractCustomCommandLine<StandaloneClusterId> defaultCLI 
=
+                       (AbstractCustomCommandLine<StandaloneClusterId>) 
getCli(configuration);
 
                final String[] args = {};
 
                CommandLine commandLine = 
defaultCLI.parseCommandLineOptions(args, false);
 
-               final StandaloneClusterDescriptor clusterDescriptor = 
defaultCLI.createClusterDescriptor(commandLine);
+               final ClusterDescriptor<StandaloneClusterId> clusterDescriptor =
+                       defaultCLI.createClusterDescriptor(commandLine);
 
                final ClusterClient<?> clusterClient = 
clusterDescriptor.retrieve(defaultCLI.getClusterId(commandLine));
 
@@ -78,12 +81,14 @@ public class DefaultCLITest extends TestLogger {
        public void testManualConfigurationOverride() throws Exception {
                final String localhost = "localhost";
                final int port = 1234;
-               final Configuration configuration = new Configuration();
+               final Configuration configuration = getConfiguration();
 
                configuration.setString(JobManagerOptions.ADDRESS, localhost);
                configuration.setInteger(JobManagerOptions.PORT, port);
 
-               final DefaultCLI defaultCLI = new DefaultCLI(configuration);
+               @SuppressWarnings("unchecked")
+               final AbstractCustomCommandLine<StandaloneClusterId> defaultCLI 
=
+                       (AbstractCustomCommandLine<StandaloneClusterId>) 
getCli(configuration);
 
                final String manualHostname = "123.123.123.123";
                final int manualPort = 4321;
@@ -91,7 +96,8 @@ public class DefaultCLITest extends TestLogger {
 
                CommandLine commandLine = 
defaultCLI.parseCommandLineOptions(args, false);
 
-               final StandaloneClusterDescriptor clusterDescriptor = 
defaultCLI.createClusterDescriptor(commandLine);
+               final ClusterDescriptor<StandaloneClusterId> clusterDescriptor =
+                       defaultCLI.createClusterDescriptor(commandLine);
 
                final ClusterClient<?> clusterClient = 
clusterDescriptor.retrieve(defaultCLI.getClusterId(commandLine));
 

Reply via email to