diff options
Diffstat (limited to 'src/test/java/com/beust/jcommander/ValidatePropertiesWhenParsingTest.java')
-rw-r--r-- | src/test/java/com/beust/jcommander/ValidatePropertiesWhenParsingTest.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/test/java/com/beust/jcommander/ValidatePropertiesWhenParsingTest.java b/src/test/java/com/beust/jcommander/ValidatePropertiesWhenParsingTest.java new file mode 100644 index 0000000..6a3a98f --- /dev/null +++ b/src/test/java/com/beust/jcommander/ValidatePropertiesWhenParsingTest.java @@ -0,0 +1,42 @@ +package com.beust.jcommander; + +import org.testng.annotations.Test; + +public class ValidatePropertiesWhenParsingTest { + @Test + public void f() + throws Exception { + + JCommander cmd = new JCommander(); + + cmd.addCommand("a", new A()); +// cmd.addCommand("b", new B()); + + cmd.parse(new String[] { "a", "-path", "myPathToHappiness" }); + } + + public static class MyPathValidator implements IParameterValidator { + + public void validate(String name, String value) throws ParameterException { + throw new RuntimeException("I shouldn't be called for command A!"); + } + } + + @Parameters + public static class A { + + @Parameter(names = "-path") + private String path = "W"; + } + + @Parameters + public static class B { + + @Parameter(names = "-path", validateWith = MyPathValidator.class) + private String path = "W"; + } + + public static void main(String[] args) throws Exception { + new ValidatePropertiesWhenParsingTest().f(); + } +}
\ No newline at end of file |