commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Neidhart (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CLI-230) Unable to properly require options
Date Mon, 11 Feb 2013 16:35:13 GMT

    [ https://issues.apache.org/jira/browse/CLI-230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13575880#comment-13575880
] 

Thomas Neidhart commented on CLI-230:
-------------------------------------

Actually, Options.getRequiredOptions() should return an unmodifiable list, adding there something
really breaks some internal logic.
                
> Unable to properly require options
> ----------------------------------
>
>                 Key: CLI-230
>                 URL: https://issues.apache.org/jira/browse/CLI-230
>             Project: Commons CLI
>          Issue Type: Bug
>          Components: CLI-1.x, Options definition
>    Affects Versions: 1.2
>         Environment: windows jdk1.6.0_21
>            Reporter: Alexander Fast
>
> Having some problems setting options as required. Have I misunderstood the documentation?
>  * In test1() the option is required but also supplied, I expect to get no exceptions.
>  * In test2() the option is required but *not* supplied, I expect to get an exception.
> {code:java}
> public class Testing {
>     public static void main(String[] args) {
>         System.out.println("Begin test 1");
>         test1();
>         System.out.println("End test 1");
>         System.out.println("Begin test 2");
>         test2();
>         System.out.println("End test 2");
>     }
>     private static void test1() {
>         String[] args = new String[] { "--foo" };
>         Options options = new Options();
>         options.addOption("f", "foo", false, "");
>         options.getRequiredOptions().add(options.getOption("foo"));
>         GnuParser parser = new GnuParser();
>         try {
>             parser.parse(options, args);
>         } catch (ParseException e) {
>             // didn't expect to get MissingOptionException here
>             System.out.println("ERROR: " + e.getMessage());
>         }
>     }
>     private static void test2() {
>         String[] args = new String[] { };
>         Options options = new Options();
>         options.addOption("f", "foo", false, "");
>         options.getOption("f").setRequired(true);
>         GnuParser parser = new GnuParser();
>         try {
>             parser.parse(options, args);
>         } catch (ParseException e) {
>             // expected to get MissingOptionException here
>             System.out.println("ERROR: " + e.getMessage());
>         }
>     }
> }
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message