Github user NicoK commented on a diff in the pull request:
https://github.com/apache/flink/pull/4169#discussion_r126634784
--- Diff:
flink-java/src/test/java/org/apache/flink/api/java/utils/ParameterToolTest.java
---
@@ -174,9 +210,38 @@ public void testUnrequestedByte() {
// test repeated access
Assert.assertEquals(1, parameter.getByte("byte"));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+ }
+
+ @Test
+ public void testUnrequestedByteWithDefaultValue() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-byte", "1"});
+ Assert.assertEquals(Sets.newHashSet("byte"),
parameter.getUnrequestedParameters());
+
+ // test parameter access
+ Assert.assertEquals(1, parameter.getByte("byte", (byte) 0));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
+
+ // test repeated access
+ Assert.assertEquals(1, parameter.getByte("byte", (byte) 0));
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
}
@Test
+ public void testUnrequestedByteWithMissingValue() {
+ ParameterTool parameter = ParameterTool.fromArgs(new
String[]{"-byte"});
+ Assert.assertEquals(Sets.newHashSet("byte"),
parameter.getUnrequestedParameters());
+
+ exception.expect(RuntimeException.class);
+ exception.expectMessage("For input string: \"__NO_VALUE_KEY\"");
+
+ parameter.getByte("byte");
+ Assert.assertEquals(Collections.emptySet(),
parameter.getUnrequestedParameters());
--- End diff --
I just tried myself with this little example:
```
@Rule
public final ExpectedException exception = ExpectedException.none();
@Test
public void testExpectedException() {
exception.expect(RuntimeException.class);
if (true) {
throw new RuntimeException();
}
throw new NullPointerException();
}
```
as expected, the `NullPointerException` is **not** thrown since the test
already ends with the `RuntimeException`
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---