[FLINK-8108][py] Fix bounds check
Project: http://git-wip-us.apache.org/repos/asf/flink/repo Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/8ec3fce7 Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/8ec3fce7 Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/8ec3fce7 Branch: refs/heads/master Commit: 8ec3fce7bb48ef8621fa5b0f553c53e641117e0c Parents: e5ab405 Author: zentol <[email protected]> Authored: Mon Nov 20 12:57:43 2017 +0100 Committer: zentol <[email protected]> Committed: Mon Nov 20 14:37:52 2017 +0100 ---------------------------------------------------------------------- .../org/apache/flink/python/api/PythonPlanBinder.java | 9 ++++----- .../org/apache/flink/python/api/PythonPlanBinderTest.java | 10 ++++++++++ 2 files changed, 14 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flink/blob/8ec3fce7/flink-libraries/flink-python/src/main/java/org/apache/flink/python/api/PythonPlanBinder.java ---------------------------------------------------------------------- diff --git a/flink-libraries/flink-python/src/main/java/org/apache/flink/python/api/PythonPlanBinder.java b/flink-libraries/flink-python/src/main/java/org/apache/flink/python/api/PythonPlanBinder.java index 810c8cd..b7adde1 100644 --- a/flink-libraries/flink-python/src/main/java/org/apache/flink/python/api/PythonPlanBinder.java +++ b/flink-libraries/flink-python/src/main/java/org/apache/flink/python/api/PythonPlanBinder.java @@ -91,11 +91,6 @@ public class PythonPlanBinder { * @throws Exception */ public static void main(String[] args) throws Exception { - if (args.length < 2) { - System.out.println("Usage: ./bin/pyflink<2/3>.[sh/bat] <pathToScript>[ <pathToPackage1>[ <pathToPackageX]][ - <parameter1>[ <parameterX>]]"); - return; - } - Configuration globalConfig = GlobalConfiguration.loadConfiguration(); PythonPlanBinder binder = new PythonPlanBinder(globalConfig); binder.runPlan(args); @@ -126,6 +121,10 @@ public class PythonPlanBinder { } void runPlan(String[] args) throws Exception { + if (args.length < 1) { + throw new IllegalArgumentException("Missing script file argument. Usage: ./bin/pyflink.[sh/bat] <pathToScript>[ <pathToPackage1>[ <pathToPackageX]][ - <parameter1>[ <parameterX>]]"); + } + int split = 0; for (int x = 0; x < args.length; x++) { if (args[x].equals("-")) { http://git-wip-us.apache.org/repos/asf/flink/blob/8ec3fce7/flink-libraries/flink-python/src/test/java/org/apache/flink/python/api/PythonPlanBinderTest.java ---------------------------------------------------------------------- diff --git a/flink-libraries/flink-python/src/test/java/org/apache/flink/python/api/PythonPlanBinderTest.java b/flink-libraries/flink-python/src/test/java/org/apache/flink/python/api/PythonPlanBinderTest.java index 2a19a5f..9e63091 100644 --- a/flink-libraries/flink-python/src/test/java/org/apache/flink/python/api/PythonPlanBinderTest.java +++ b/flink-libraries/flink-python/src/test/java/org/apache/flink/python/api/PythonPlanBinderTest.java @@ -118,6 +118,7 @@ public class PythonPlanBinderTest extends JavaProgramTestBase { @Override protected void testProgram() throws Exception { + testBoundCheck(); String utils = findUtilsFile(); String python2 = getPython2Path(); if (python2 != null) { @@ -136,4 +137,13 @@ public class PythonPlanBinderTest extends JavaProgramTestBase { } } } + + private void testBoundCheck() throws Exception { + log.info("Running testBoundCheck."); + try { + new PythonPlanBinder(new Configuration()).runPlan(new String[0]); + } catch (IllegalArgumentException expected) { + // we expect this exception to be thrown since no argument was passed + } + } }
