[
https://issues.apache.org/jira/browse/FLINK-6357?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16076586#comment-16076586
]
ASF GitHub Bot commented on FLINK-6357:
---------------------------------------
Github user NicoK commented on a diff in the pull request:
https://github.com/apache/flink/pull/4169#discussion_r125911839
--- Diff:
flink-java/src/test/java/org/apache/flink/api/java/utils/ParameterToolTest.java
---
@@ -154,4 +149,149 @@ public void testFromGenericOptionsParser() throws
IOException {
ParameterTool parameter =
ParameterTool.fromGenericOptionsParser(new String[]{"-D", "input=myInput",
"-DexpectedCount=15"});
validate(parameter);
}
+
+ @Test
+ public void testUnrequestedBoolean() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-boolean", "true"});
+ Assert.assertEquals(Sets.newHashSet("boolean"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertTrue(parameter.getBoolean("boolean"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertTrue(parameter.getBoolean("boolean"));
+ }
+
+ @Test
+ public void testUnrequestedByte() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-byte", "1"});
+ Assert.assertEquals(Sets.newHashSet("byte"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(1, parameter.getByte("byte"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(1, parameter.getByte("byte"));
+ }
+
+ @Test
+ public void testUnrequestedShort() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-short", "2"});
+ Assert.assertEquals(Sets.newHashSet("short"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(2, parameter.getShort("short"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(2, parameter.getShort("short"));
+ }
+
+ @Test
+ public void testUnrequestedInt() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-int", "4"});
+ Assert.assertEquals(Sets.newHashSet("int"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(4, parameter.getByte("int"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(4, parameter.getByte("int"));
+ }
+
+ @Test
+ public void testUnrequestedLong() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-long", "8"});
+ Assert.assertEquals(Sets.newHashSet("long"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(8, parameter.getByte("long"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(8, parameter.getByte("long"));
+ }
+
+ @Test
+ public void testUnrequestedFloat() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-float", "4"});
+ Assert.assertEquals(Sets.newHashSet("float"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(4.0, parameter.getFloat("float"), 0.00001);
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(4.0, parameter.getFloat("float"), 0.00001);
+ }
+
+ @Test
+ public void testUnrequestedDouble() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-double", "8"});
+ Assert.assertEquals(Sets.newHashSet("double"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(8.0, parameter.getDouble("double"),
0.00001);
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(8.0, parameter.getDouble("double"),
0.00001);
+ }
+
+ @Test
+ public void testUnrequestedString() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-string", "∞"});
+ Assert.assertEquals(Sets.newHashSet("string"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals("∞", parameter.get("string"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals("∞", parameter.get("string"));
--- End diff --
same here: add the check?
> ParameterTool get unrequested parameters
> ----------------------------------------
>
> Key: FLINK-6357
> URL: https://issues.apache.org/jira/browse/FLINK-6357
> Project: Flink
> Issue Type: Improvement
> Components: Java API
> Affects Versions: 1.3.0
> Reporter: Greg Hogan
> Assignee: Greg Hogan
> Priority: Minor
>
> The Gelly examples use {{ParameterTool}} to parse required and optional
> parameters. In the latter case we should detect if a user mistypes a
> parameter name. I would like to add a {{Set<String>
> getUnrequestedParameters()}} method returning parameter names not requested
> by {{has}} or any of the {{get}} methods.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)