You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ba...@apache.org on 2008/03/22 03:49:46 UTC

svn commit: r639941 [14/17] - in /commons/proper/cli/trunk: ./ src/java/org/apache/commons/cli2/ src/java/org/apache/commons/cli2/builder/ src/java/org/apache/commons/cli2/commandline/ src/java/org/apache/commons/cli2/option/ src/java/org/apache/common...

Modified: commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTest.java
URL: http://svn.apache.org/viewvc/commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTest.java?rev=639941&r1=639940&r2=639941&view=diff
==============================================================================
--- commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTest.java (original)
+++ commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTest.java Fri Mar 21 19:49:41 2008
@@ -1,440 +1 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.cli2.option;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Set;
-
-import org.apache.commons.cli2.DisplaySetting;
-import org.apache.commons.cli2.Group;
-import org.apache.commons.cli2.HelpLine;
-import org.apache.commons.cli2.Option;
-import org.apache.commons.cli2.OptionException;
-import org.apache.commons.cli2.WriteableCommandLine;
-import org.apache.commons.cli2.builder.DefaultOptionBuilder;
-import org.apache.commons.cli2.builder.GroupBuilder;
-import org.apache.commons.cli2.commandline.WriteableCommandLineImpl;
-
-/**
- * @author Rob Oxspring
- */
-public class GroupTest
-    extends GroupTestCase {
-    public static final Command COMMAND_START =
-        new Command("start", "Starts the server", null, false, null, null, 0);
-    public static final Command COMMAND_STOP =
-        new Command("stop", "Stops the server", null, false, null, null, 0);
-    public static final Command COMMAND_RESTART =
-        new Command("restart", "Stops and starts the server", null, false, null, null, 0);
-    public static final Command COMMAND_GRACEFUL =
-        new Command("graceful", "Restarts the server without interruption", null, false, null,
-                    null, 0);
-
-    public static Group buildApacheCommandGroup() {
-        final List options = new ArrayList();
-        options.add(COMMAND_GRACEFUL);
-        options.add(COMMAND_RESTART);
-        options.add(COMMAND_START);
-        options.add(COMMAND_STOP);
-
-        return new GroupImpl(options, "httpd-cmds", "The command to pass to the server", 1, 1);
-    }
-
-    public static Group buildApachectlGroup() {
-        final List options = new ArrayList();
-        options.add(DefaultOptionTest.buildHelpOption());
-        options.add(ParentTest.buildKParent());
-
-        return new GroupImpl(options, "apachectl", "Controls the apache http deamon", 0,
-                             Integer.MAX_VALUE);
-    }
-
-    public static Group buildAntGroup() {
-        final List options = new ArrayList();
-        options.add(DefaultOptionTest.buildHelpOption());
-        options.add(ArgumentTest.buildTargetsArgument());
-
-        return new GroupImpl(options, "ant", "The options for ant", 0, Integer.MAX_VALUE);
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.GroupTestCase#testProcessAnonymousArguments()
-     */
-    public void testProcessAnonymousArguments()
-        throws OptionException {
-        final Group option = buildAntGroup();
-        final List args = list("compile,test", "dist");
-        final ListIterator iterator = args.listIterator();
-        final WriteableCommandLine commandLine = commandLine(option, args);
-        option.process(commandLine, iterator);
-
-        assertFalse(iterator.hasNext());
-        assertTrue(commandLine.hasOption("target"));
-        assertListContentsEqual(commandLine.getValues("target"), args);
-        assertListContentsEqual(list("compile", "test", "dist"), args);
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.GroupTestCase#testProcessOptions()
-     */
-    public void testProcessOptions()
-        throws OptionException {
-        final Group option = buildApachectlGroup();
-        final List args = list("-?", "-k");
-        final ListIterator iterator = args.listIterator();
-        final WriteableCommandLine commandLine = commandLine(option, args);
-        option.process(commandLine, iterator);
-
-        assertFalse(iterator.hasNext());
-        assertTrue(commandLine.hasOption("--help"));
-        assertTrue(commandLine.hasOption("-k"));
-        assertFalse(commandLine.hasOption("start"));
-        assertListContentsEqual(list("--help", "-k"), args);
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testCanProcess()
-     */
-    public void testCanProcess() {
-        final Group option = buildApacheCommandGroup();
-        assertTrue(option.canProcess(new WriteableCommandLineImpl(option, null), "start"));
-    }
-
-    public void testCanProcess_BadMatch() {
-        final Group option = buildApacheCommandGroup();
-        assertFalse(option.canProcess(new WriteableCommandLineImpl(option, null), "begin"));
-    }
-
-    public void testCanProcess_NullMatch() {
-        final Group option = buildApacheCommandGroup();
-        assertFalse(option.canProcess(new WriteableCommandLineImpl(option, null), (String) null));
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testPrefixes()
-     */
-    public void testPrefixes() {
-        final Group option = buildApachectlGroup();
-        assertContentsEqual(list("-", "--"), option.getPrefixes());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testProcess()
-     */
-    public void testProcess()
-        throws OptionException {
-        final Group option = buildAntGroup();
-        final List args = list("--help", "compile,test", "dist");
-        final ListIterator iterator = args.listIterator();
-        final WriteableCommandLine commandLine = commandLine(option, args);
-        option.process(commandLine, iterator);
-
-        assertFalse(iterator.hasNext());
-        assertTrue(commandLine.hasOption("-?"));
-        assertListContentsEqual(list("compile", "test", "dist"), commandLine.getValues("target"));
-    }
-
-    public void testProcess_Nested()
-        throws OptionException {
-        final Group option = buildApachectlGroup();
-        final List args = list("-h", "-k", "graceful");
-        final ListIterator iterator = args.listIterator();
-        final WriteableCommandLine commandLine = commandLine(option, args);
-        option.process(commandLine, iterator);
-
-        assertFalse(iterator.hasNext());
-        assertTrue(commandLine.hasOption("-?"));
-        assertTrue(commandLine.hasOption("-k"));
-        assertTrue(commandLine.hasOption("graceful"));
-        assertFalse(commandLine.hasOption("stop"));
-        assertTrue(commandLine.getValues("start").isEmpty());
-        assertListContentsEqual(list("--help", "-k", "graceful"), args);
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testTriggers()
-     */
-    public void testTriggers() {
-        final Group option = buildApachectlGroup();
-        assertContentsEqual(list("--help", "-?", "-h", "-k"), option.getTriggers());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testValidate()
-     */
-    public void testValidate()
-        throws OptionException {
-        final Group option = buildApacheCommandGroup();
-        final WriteableCommandLine commandLine = commandLine(option, list());
-
-        commandLine.addOption(COMMAND_RESTART);
-
-        option.validate(commandLine);
-    }
-
-    public void testValidate_UnexpectedOption() {
-        final Group option = buildApacheCommandGroup();
-        final WriteableCommandLine commandLine = commandLine(option, list());
-
-        commandLine.addOption(COMMAND_RESTART);
-        commandLine.addOption(COMMAND_GRACEFUL);
-
-        try {
-            option.validate(commandLine);
-            fail("Too many options");
-        } catch (OptionException uoe) {
-            assertEquals(option, uoe.getOption());
-        }
-    }
-
-    public void testValidate_MissingOption() {
-        final Group option = buildApacheCommandGroup();
-        final WriteableCommandLine commandLine = commandLine(option, list());
-
-        try {
-            option.validate(commandLine);
-            fail("Missing an option");
-        } catch (OptionException moe) {
-            assertEquals(option, moe.getOption());
-        }
-    }
-
-    public void testValidate_RequiredChild()
-        throws OptionException {
-        final Option required =
-            new DefaultOptionBuilder().withLongName("required").withRequired(true).create();
-        final Option optional =
-            new DefaultOptionBuilder().withLongName("optional").withRequired(false).create();
-        final Group group =
-            new GroupBuilder().withOption(required).withOption(optional).withMinimum(1).create();
-
-        WriteableCommandLine commandLine;
-
-        commandLine = commandLine(group, list());
-
-        try {
-            group.validate(commandLine);
-            fail("Missing option 'required'");
-        } catch (OptionException moe) {
-            assertEquals(required, moe.getOption());
-        }
-
-        commandLine = commandLine(group, list());
-        commandLine.addOption(optional);
-
-        try {
-            group.validate(commandLine);
-            fail("Missing option 'required'");
-        } catch (OptionException moe) {
-            assertEquals(required, moe.getOption());
-        }
-
-        commandLine = commandLine(group, list());
-        commandLine.addOption(required);
-        group.validate(commandLine);
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testAppendUsage()
-     */
-    public void testAppendUsage() {
-        final Option option = buildApacheCommandGroup();
-        final StringBuffer buffer = new StringBuffer();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-
-        //settings.remove(DisplaySetting.DISPLAY_ARGUMENT_NUMBERED);
-        option.appendUsage(buffer, settings, null);
-
-        assertEquals("httpd-cmds (graceful|restart|start|stop)", buffer.toString());
-    }
-
-    public void testAppendUsage_NoOptional() {
-        final Option option = buildApacheCommandGroup();
-        final StringBuffer buffer = new StringBuffer();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_OPTIONAL);
-        option.appendUsage(buffer, settings, null);
-
-        assertEquals("httpd-cmds (graceful|restart|start|stop)", buffer.toString());
-    }
-
-    public void testAppendUsage_NoExpand() {
-        final Option option = buildApacheCommandGroup();
-        final StringBuffer buffer = new StringBuffer();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_EXPANDED);
-        option.appendUsage(buffer, settings, null);
-
-        assertEquals("httpd-cmds", buffer.toString());
-    }
-
-    public void testAppendUsage_NoExpandOrName() {
-        final Option option = buildApacheCommandGroup();
-        final StringBuffer buffer = new StringBuffer();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_EXPANDED);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_NAME);
-        option.appendUsage(buffer, settings, null);
-
-        assertEquals("httpd-cmds", buffer.toString());
-    }
-
-    public void testAppendUsage_NoName() {
-        final Option option = buildApacheCommandGroup();
-        final StringBuffer buffer = new StringBuffer();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_NAME);
-        option.appendUsage(buffer, settings, null);
-
-        assertEquals("graceful|restart|start|stop", buffer.toString());
-    }
-
-    public void testAppendUsage_WithArgs() {
-        final Option option = buildAntGroup();
-        final StringBuffer buffer = new StringBuffer();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_OUTER);
-        option.appendUsage(buffer, settings, null);
-
-        assertEquals("[ant (--help (-?,-h)) [<target1> [<target2> ...]]]", buffer.toString());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testGetPreferredName()
-     */
-    public void testGetPreferredName() {
-        final Option option = buildAntGroup();
-        assertEquals("ant", option.getPreferredName());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testGetDescription()
-     */
-    public void testGetDescription() {
-        final Option option = buildApachectlGroup();
-        assertEquals("Controls the apache http deamon", option.getDescription());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testHelpLines()
-     */
-    public void testHelpLines() {
-        final Option option = buildApacheCommandGroup();
-        final List lines = option.helpLines(0, DisplaySetting.ALL, null);
-        final Iterator i = lines.iterator();
-
-        final HelpLine line1 = (HelpLine) i.next();
-        assertEquals(0, line1.getIndent());
-        assertEquals(option, line1.getOption());
-
-        final HelpLine line2 = (HelpLine) i.next();
-        assertEquals(1, line2.getIndent());
-        assertEquals(COMMAND_GRACEFUL, line2.getOption());
-
-        final HelpLine line3 = (HelpLine) i.next();
-        assertEquals(1, line3.getIndent());
-        assertEquals(COMMAND_RESTART, line3.getOption());
-
-        final HelpLine line4 = (HelpLine) i.next();
-        assertEquals(1, line4.getIndent());
-        assertEquals(COMMAND_START, line4.getOption());
-
-        final HelpLine line5 = (HelpLine) i.next();
-        assertEquals(1, line5.getIndent());
-        assertEquals(COMMAND_STOP, line5.getOption());
-
-        assertFalse(i.hasNext());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testHelpLines()
-     */
-    public void testHelpLines_NoExpanded() {
-        final Option option = buildApacheCommandGroup();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_EXPANDED);
-
-        final List lines = option.helpLines(0, settings, null);
-        final Iterator i = lines.iterator();
-
-        final HelpLine line1 = (HelpLine) i.next();
-        assertEquals(0, line1.getIndent());
-        assertEquals(option, line1.getOption());
-
-        assertFalse(i.hasNext());
-    }
-
-    /*
-     * (non-Javadoc)
-     *
-     * @see org.apache.commons.cli2.OptionTestCase#testHelpLines()
-     */
-    public void testHelpLines_NoName() {
-        final Option option = buildApacheCommandGroup();
-        final Set settings = new HashSet(DisplaySetting.ALL);
-        settings.remove(DisplaySetting.DISPLAY_GROUP_NAME);
-
-        final List lines = option.helpLines(0, settings, null);
-        final Iterator i = lines.iterator();
-
-        final HelpLine line2 = (HelpLine) i.next();
-        assertEquals(1, line2.getIndent());
-        assertEquals(COMMAND_GRACEFUL, line2.getOption());
-
-        final HelpLine line3 = (HelpLine) i.next();
-        assertEquals(1, line3.getIndent());
-        assertEquals(COMMAND_RESTART, line3.getOption());
-
-        final HelpLine line4 = (HelpLine) i.next();
-        assertEquals(1, line4.getIndent());
-        assertEquals(COMMAND_START, line4.getOption());
-
-        final HelpLine line5 = (HelpLine) i.next();
-        assertEquals(1, line5.getIndent());
-        assertEquals(COMMAND_STOP, line5.getOption());
-
-        assertFalse(i.hasNext());
-    }
-}
+/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.commons.cli2.option;import java.util.ArrayList;import java.util.HashSet;import java.util.Iterator;import java.util.List;import java.util.ListIterator;import java.util.Set;import org.ap
 ache.commons.cli2.DisplaySetting;import org.apache.commons.cli2.Group;import org.apache.commons.cli2.HelpLine;import org.apache.commons.cli2.Option;import org.apache.commons.cli2.OptionException;import org.apache.commons.cli2.WriteableCommandLine;import org.apache.commons.cli2.builder.DefaultOptionBuilder;import org.apache.commons.cli2.builder.GroupBuilder;import org.apache.commons.cli2.commandline.WriteableCommandLineImpl;/** * @author Rob Oxspring */public class GroupTest    extends GroupTestCase {    public static final Command COMMAND_START =        new Command("start", "Starts the server", null, false, null, null, 0);    public static final Command COMMAND_STOP =        new Command("stop", "Stops the server", null, false, null, null, 0);    public static final Command COMMAND_RESTART =        new Command("restart", "Stops and starts the server", null, false, null, null, 0);    public static final Command COMMAND_GRACEFUL =        new Command("graceful", "Restarts the se
 rver without interruption", null, false, null,                    null, 0);    public static Group buildApacheCommandGroup() {        final List options = new ArrayList();        options.add(COMMAND_GRACEFUL);        options.add(COMMAND_RESTART);        options.add(COMMAND_START);        options.add(COMMAND_STOP);        return new GroupImpl(options, "httpd-cmds", "The command to pass to the server", 1, 1);    }    public static Group buildApachectlGroup() {        final List options = new ArrayList();        options.add(DefaultOptionTest.buildHelpOption());        options.add(ParentTest.buildKParent());        return new GroupImpl(options, "apachectl", "Controls the apache http deamon", 0,                             Integer.MAX_VALUE);    }    public static Group buildAntGroup() {        final List options = new ArrayList();        options.add(DefaultOptionTest.buildHelpOption());        options.add(ArgumentTest.buildTargetsArgument());        return new GroupImpl(options,
  "ant", "The options for ant", 0, Integer.MAX_VALUE);    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.GroupTestCase#testProcessAnonymousArguments()     */    public void testProcessAnonymousArguments()        throws OptionException {        final Group option = buildAntGroup();        final List args = list("compile,test", "dist");        final ListIterator iterator = args.listIterator();        final WriteableCommandLine commandLine = commandLine(option, args);        option.process(commandLine, iterator);        assertFalse(iterator.hasNext());        assertTrue(commandLine.hasOption("target"));        assertListContentsEqual(commandLine.getValues("target"), args);        assertListContentsEqual(list("compile", "test", "dist"), args);    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.GroupTestCase#testProcessOptions()     */    public void testProcessOptions()        throws OptionException {        final Group option = buildApa
 chectlGroup();        final List args = list("-?", "-k");        final ListIterator iterator = args.listIterator();        final WriteableCommandLine commandLine = commandLine(option, args);        option.process(commandLine, iterator);        assertFalse(iterator.hasNext());        assertTrue(commandLine.hasOption("--help"));        assertTrue(commandLine.hasOption("-k"));        assertFalse(commandLine.hasOption("start"));        assertListContentsEqual(list("--help", "-k"), args);    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testCanProcess()     */    public void testCanProcess() {        final Group option = buildApacheCommandGroup();        assertTrue(option.canProcess(new WriteableCommandLineImpl(option, null), "start"));    }    public void testCanProcess_BadMatch() {        final Group option = buildApacheCommandGroup();        assertFalse(option.canProcess(new WriteableCommandLineImpl(option, null), "begin"));    }    public
  void testCanProcess_NullMatch() {        final Group option = buildApacheCommandGroup();        assertFalse(option.canProcess(new WriteableCommandLineImpl(option, null), (String) null));    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testPrefixes()     */    public void testPrefixes() {        final Group option = buildApachectlGroup();        assertContentsEqual(list("-", "--"), option.getPrefixes());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testProcess()     */    public void testProcess()        throws OptionException {        final Group option = buildAntGroup();        final List args = list("--help", "compile,test", "dist");        final ListIterator iterator = args.listIterator();        final WriteableCommandLine commandLine = commandLine(option, args);        option.process(commandLine, iterator);        assertFalse(iterator.hasNext());        assertTrue(commandLine.hasOption("-?"
 ));        assertListContentsEqual(list("compile", "test", "dist"), commandLine.getValues("target"));    }    public void testProcess_Nested()        throws OptionException {        final Group option = buildApachectlGroup();        final List args = list("-h", "-k", "graceful");        final ListIterator iterator = args.listIterator();        final WriteableCommandLine commandLine = commandLine(option, args);        option.process(commandLine, iterator);        assertFalse(iterator.hasNext());        assertTrue(commandLine.hasOption("-?"));        assertTrue(commandLine.hasOption("-k"));        assertTrue(commandLine.hasOption("graceful"));        assertFalse(commandLine.hasOption("stop"));        assertTrue(commandLine.getValues("start").isEmpty());        assertListContentsEqual(list("--help", "-k", "graceful"), args);    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testTriggers()     */    public void testTriggers() {        final G
 roup option = buildApachectlGroup();        assertContentsEqual(list("--help", "-?", "-h", "-k"), option.getTriggers());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testValidate()     */    public void testValidate()        throws OptionException {        final Group option = buildApacheCommandGroup();        final WriteableCommandLine commandLine = commandLine(option, list());        commandLine.addOption(COMMAND_RESTART);        option.validate(commandLine);    }    public void testValidate_UnexpectedOption() {        final Group option = buildApacheCommandGroup();        final WriteableCommandLine commandLine = commandLine(option, list());        commandLine.addOption(COMMAND_RESTART);        commandLine.addOption(COMMAND_GRACEFUL);        try {            option.validate(commandLine);            fail("Too many options");        } catch (OptionException uoe) {            assertEquals(option, uoe.getOption());        }    }    pub
 lic void testValidate_MissingOption() {        final Group option = buildApacheCommandGroup();        final WriteableCommandLine commandLine = commandLine(option, list());        try {            option.validate(commandLine);            fail("Missing an option");        } catch (OptionException moe) {            assertEquals(option, moe.getOption());        }    }    public void testValidate_RequiredChild()        throws OptionException {        final Option required =            new DefaultOptionBuilder().withLongName("required").withRequired(true).create();        final Option optional =            new DefaultOptionBuilder().withLongName("optional").withRequired(false).create();        final Group group =            new GroupBuilder().withOption(required).withOption(optional).withMinimum(1).create();        WriteableCommandLine commandLine;        commandLine = commandLine(group, list());        try {            group.validate(commandLine);            fail("Missing option 
 'required'");        } catch (OptionException moe) {            assertEquals(required, moe.getOption());        }        commandLine = commandLine(group, list());        commandLine.addOption(optional);        try {            group.validate(commandLine);            fail("Missing option 'required'");        } catch (OptionException moe) {            assertEquals(required, moe.getOption());        }        commandLine = commandLine(group, list());        commandLine.addOption(required);        group.validate(commandLine);    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testAppendUsage()     */    public void testAppendUsage() {        final Option option = buildApacheCommandGroup();        final StringBuffer buffer = new StringBuffer();        final Set settings = new HashSet(DisplaySetting.ALL);        //settings.remove(DisplaySetting.DISPLAY_ARGUMENT_NUMBERED);        option.appendUsage(buffer, settings, null);        assertEquals("htt
 pd-cmds (graceful|restart|start|stop)", buffer.toString());    }    public void testAppendUsage_NoOptional() {        final Option option = buildApacheCommandGroup();        final StringBuffer buffer = new StringBuffer();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_OPTIONAL);        option.appendUsage(buffer, settings, null);        assertEquals("httpd-cmds (graceful|restart|start|stop)", buffer.toString());    }    public void testAppendUsage_NoExpand() {        final Option option = buildApacheCommandGroup();        final StringBuffer buffer = new StringBuffer();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_GROUP_EXPANDED);        option.appendUsage(buffer, settings, null);        assertEquals("httpd-cmds", buffer.toString());    }    public void testAppendUsage_NoExpandOrName() {        final Option option = buildApacheCommandGroup();        final S
 tringBuffer buffer = new StringBuffer();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_GROUP_EXPANDED);        settings.remove(DisplaySetting.DISPLAY_GROUP_NAME);        option.appendUsage(buffer, settings, null);        assertEquals("httpd-cmds", buffer.toString());    }    public void testAppendUsage_NoName() {        final Option option = buildApacheCommandGroup();        final StringBuffer buffer = new StringBuffer();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_GROUP_NAME);        option.appendUsage(buffer, settings, null);        assertEquals("graceful|restart|start|stop", buffer.toString());    }    public void testAppendUsage_WithArgs() {        final Option option = buildAntGroup();        final StringBuffer buffer = new StringBuffer();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_GRO
 UP_OUTER);        option.appendUsage(buffer, settings, null);        assertEquals("[ant (--help (-?,-h)) [<target1> [<target2> ...]]]", buffer.toString());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testGetPreferredName()     */    public void testGetPreferredName() {        final Option option = buildAntGroup();        assertEquals("ant", option.getPreferredName());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testGetDescription()     */    public void testGetDescription() {        final Option option = buildApachectlGroup();        assertEquals("Controls the apache http deamon", option.getDescription());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testHelpLines()     */    public void testHelpLines() {        final Option option = buildApacheCommandGroup();        final List lines = option.helpLines(0, DisplaySetting.ALL, null);        final Iter
 ator i = lines.iterator();        final HelpLine line1 = (HelpLine) i.next();        assertEquals(0, line1.getIndent());        assertEquals(option, line1.getOption());        final HelpLine line2 = (HelpLine) i.next();        assertEquals(1, line2.getIndent());        assertEquals(COMMAND_GRACEFUL, line2.getOption());        final HelpLine line3 = (HelpLine) i.next();        assertEquals(1, line3.getIndent());        assertEquals(COMMAND_RESTART, line3.getOption());        final HelpLine line4 = (HelpLine) i.next();        assertEquals(1, line4.getIndent());        assertEquals(COMMAND_START, line4.getOption());        final HelpLine line5 = (HelpLine) i.next();        assertEquals(1, line5.getIndent());        assertEquals(COMMAND_STOP, line5.getOption());        assertFalse(i.hasNext());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testHelpLines()     */    public void testHelpLines_NoExpanded() {        final Option option = buil
 dApacheCommandGroup();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_GROUP_EXPANDED);        final List lines = option.helpLines(0, settings, null);        final Iterator i = lines.iterator();        final HelpLine line1 = (HelpLine) i.next();        assertEquals(0, line1.getIndent());        assertEquals(option, line1.getOption());        assertFalse(i.hasNext());    }    /*     * (non-Javadoc)     *     * @see org.apache.commons.cli2.OptionTestCase#testHelpLines()     */    public void testHelpLines_NoName() {        final Option option = buildApacheCommandGroup();        final Set settings = new HashSet(DisplaySetting.ALL);        settings.remove(DisplaySetting.DISPLAY_GROUP_NAME);        final List lines = option.helpLines(0, settings, null);        final Iterator i = lines.iterator();        final HelpLine line2 = (HelpLine) i.next();        assertEquals(1, line2.getIndent());        assertEquals(COMMAND_GRACE
 FUL, line2.getOption());        final HelpLine line3 = (HelpLine) i.next();        assertEquals(1, line3.getIndent());        assertEquals(COMMAND_RESTART, line3.getOption());        final HelpLine line4 = (HelpLine) i.next();        assertEquals(1, line4.getIndent());        assertEquals(COMMAND_START, line4.getOption());        final HelpLine line5 = (HelpLine) i.next();        assertEquals(1, line5.getIndent());        assertEquals(COMMAND_STOP, line5.getOption());        assertFalse(i.hasNext());    }}
\ No newline at end of file

Modified: commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTestCase.java
URL: http://svn.apache.org/viewvc/commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTestCase.java?rev=639941&r1=639940&r2=639941&view=diff
==============================================================================
--- commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTestCase.java (original)
+++ commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/GroupTestCase.java Fri Mar 21 19:49:41 2008
@@ -1,31 +1 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.cli2.option;
-
-import org.apache.commons.cli2.OptionException;
-
-/**
- * @author Rob Oxspring
- */
-public abstract class GroupTestCase
-    extends OptionTestCase {
-    public abstract void testProcessOptions()
-        throws OptionException;
-
-    public abstract void testProcessAnonymousArguments()
-        throws OptionException;
-}
+/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.commons.cli2.option;import org.apache.commons.cli2.OptionException;/** * @author Rob Oxspring */public abstract class GroupTestCase    extends OptionTestCase {    public abstract void 
 testProcessOptions()        throws OptionException;    public abstract void testProcessAnonymousArguments()        throws OptionException;}
\ No newline at end of file

Modified: commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/NestedGroupTest.java
URL: http://svn.apache.org/viewvc/commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/NestedGroupTest.java?rev=639941&r1=639940&r2=639941&view=diff
==============================================================================
--- commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/NestedGroupTest.java (original)
+++ commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/NestedGroupTest.java Fri Mar 21 19:49:41 2008
@@ -1,192 +1 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.cli2.option;
-
-import org.apache.commons.cli2.CLITestCase;
-import org.apache.commons.cli2.CommandLine;
-import org.apache.commons.cli2.Group;
-import org.apache.commons.cli2.OptionException;
-import org.apache.commons.cli2.builder.ArgumentBuilder;
-import org.apache.commons.cli2.builder.DefaultOptionBuilder;
-import org.apache.commons.cli2.builder.GroupBuilder;
-import org.apache.commons.cli2.commandline.Parser;
-import org.apache.commons.cli2.util.HelpFormatter;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringReader;
-import java.io.StringWriter;
-
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * Test to exercise nested groups developed to demonstrate bug 32533
- */
-public class NestedGroupTest extends CLITestCase {
-    final static DefaultOptionBuilder obuilder = new DefaultOptionBuilder();
-    final static ArgumentBuilder abuilder = new ArgumentBuilder();
-    final static GroupBuilder gbuilder = new GroupBuilder();
-
-    static Group buildActionGroup() {
-        return gbuilder.withName("Action").withDescription("Action")
-                       .withMinimum(1).withMaximum(1)
-                       .withOption(obuilder.withId(5).withShortName("e")
-                                           .withLongName("encrypt")
-                                           .withDescription("Encrypt input")
-                                           .create())
-                       .withOption(obuilder.withId(6).withShortName("d")
-                                           .withLongName("decrypt")
-                                           .withDescription("Decrypt input")
-                                           .create()).create();
-    }
-
-    static Group buildAlgorithmGroup() {
-        return gbuilder.withName("Algorithm")
-                       .withDescription("Encryption Algorithm").withMaximum(1)
-                       .withOption(obuilder.withId(0).withShortName("b")
-                                           .withLongName("blowfish")
-                                           .withDescription("Blowfish").create())
-                       .withOption(obuilder.withId(1).withShortName("3")
-                                           .withLongName("3DES")
-                                           .withDescription("Triple DES")
-                                           .create()).create();
-    }
-
-    static Group buildInputGroup() {
-        return gbuilder.withName("Input").withDescription("Input").withMinimum(1)
-                       .withMaximum(1)
-                       .withOption(obuilder.withId(2).withShortName("f")
-                                           .withLongName("file")
-                                           .withDescription("Input file")
-                                           .withArgument(abuilder.withName(
-                    "file").withMinimum(1).withMaximum(1).create()).create())
-                       .withOption(obuilder.withId(3).withShortName("s")
-                                           .withLongName("string")
-                                           .withDescription("Input string")
-                                           .withArgument(abuilder.withName(
-                    "string").withMinimum(1).withMaximum(1).create()).create())
-                       .create();
-    }
-
-    static Group buildEncryptionServiceGroup(Group[] nestedGroups) {
-        gbuilder.withName("encryptionService")
-                .withOption(obuilder.withId(4).withShortName("h")
-                                    .withLongName("help")
-                                    .withDescription("Print this message")
-                                    .create()).withOption(obuilder.withShortName(
-                "k").withLongName("key").withDescription("Encryption key")
-                                                                  .create());
-
-        for (int i = 0; i < nestedGroups.length; i++) {
-            gbuilder.withOption(nestedGroups[i]);
-        }
-
-        return gbuilder.create();
-    }
-
-    public void testNestedGroup()
-        throws OptionException {
-        final String[] args = {
-                "-eb",
-                "--file",
-                "/tmp/filename.txt"
-            };
-
-        Group[] nestedGroups = {
-                buildActionGroup(),
-                buildAlgorithmGroup(),
-                buildInputGroup()
-            };
-
-        Parser parser = new Parser();
-        parser.setGroup(buildEncryptionServiceGroup(nestedGroups));
-
-        CommandLine commandLine = parser.parse(args);
-
-        assertTrue("/tmp/filename.txt".equals(commandLine.getValue("-f")));
-        assertTrue(commandLine.hasOption("-e"));
-        assertTrue(commandLine.hasOption("-b"));
-        assertFalse(commandLine.hasOption("-d"));
-    }
-
-    public void testNestedGroupHelp() {
-        Group[] nestedGroups = {
-                buildActionGroup(),
-                buildAlgorithmGroup(),
-                buildInputGroup()
-            };
-
-        HelpFormatter helpFormatter = new HelpFormatter();
-        helpFormatter.setGroup(buildEncryptionServiceGroup(nestedGroups));
-
-        final StringWriter out = new StringWriter();
-        helpFormatter.setPrintWriter(new PrintWriter(out));
-
-        try {
-            helpFormatter.print();
-
-            final BufferedReader bufferedReader = new BufferedReader(new StringReader(
-                        out.toString()));
-            final String[] expected = new String[] {
-                    "Usage:                                                                          ",
-                    " [-h -k -e|-d -b|-3 -f <file>|-s <string>]                                      ",
-                    "encryptionService                                                               ",
-                    "  -h (--help)               Print this message                                  ",
-                    "  -k (--key)                Encryption key                                      ",
-                    "  Action                    Action                                              ",
-                    "    -e (--encrypt)          Encrypt input                                       ",
-                    "    -d (--decrypt)          Decrypt input                                       ",
-                    "  Algorithm                 Encryption Algorithm                                ",
-                    "    -b (--blowfish)         Blowfish                                            ",
-                    "    -3 (--3DES)             Triple DES                                          ",
-                    "  Input                     Input                                               ",
-                    "    -f (--file) file        Input file                                          ",
-                    "    -s (--string) string    Input string                                        "
-                };
-
-            List actual = new ArrayList(expected.length);
-            String input;
-
-            while ((input = bufferedReader.readLine()) != null) {
-                actual.add(input);
-            }
-
-            // Show they are the same number of lines
-            assertEquals("Help text lines should be " + expected.length,
-                actual.size(), expected.length);
-
-            for (int i = 0; i < expected.length; i++) {
-                if (!expected[i].equals(actual.get(i))) {
-                    for (int x = 0; x < expected.length; i++) {
-                        System.out.println("   " + expected[i]);
-                        System.out.println((expected[i].equals(actual.get(i))
-                            ? "== "
-                            : "!= ") + actual.get(i));
-                    }
-                }
-
-                assertEquals(expected[i], actual.get(i));
-            }
-        }
-        catch (IOException e) {
-            fail(e.getLocalizedMessage());
-        }
-    }
-}
+/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.commons.cli2.option;import org.apache.commons.cli2.CLITestCase;import org.apache.commons.cli2.CommandLine;import org.apache.commons.cli2.Group;import org.apache.commons.cli2.OptionExc
 eption;import org.apache.commons.cli2.builder.ArgumentBuilder;import org.apache.commons.cli2.builder.DefaultOptionBuilder;import org.apache.commons.cli2.builder.GroupBuilder;import org.apache.commons.cli2.commandline.Parser;import org.apache.commons.cli2.util.HelpFormatter;import java.io.BufferedReader;import java.io.IOException;import java.io.PrintWriter;import java.io.StringReader;import java.io.StringWriter;import java.util.ArrayList;import java.util.List;/** * Test to exercise nested groups developed to demonstrate bug 32533 */public class NestedGroupTest extends CLITestCase {    final static DefaultOptionBuilder obuilder = new DefaultOptionBuilder();    final static ArgumentBuilder abuilder = new ArgumentBuilder();    final static GroupBuilder gbuilder = new GroupBuilder();    static Group buildActionGroup() {        return gbuilder.withName("Action").withDescription("Action")                       .withMinimum(1).withMaximum(1)                       .withOption(obuilde
 r.withId(5).withShortName("e")                                           .withLongName("encrypt")                                           .withDescription("Encrypt input")                                           .create())                       .withOption(obuilder.withId(6).withShortName("d")                                           .withLongName("decrypt")                                           .withDescription("Decrypt input")                                           .create()).create();    }    static Group buildAlgorithmGroup() {        return gbuilder.withName("Algorithm")                       .withDescription("Encryption Algorithm").withMaximum(1)                       .withOption(obuilder.withId(0).withShortName("b")                                           .withLongName("blowfish")                                           .withDescription("Blowfish").create())                       .withOption(obuilder.withId(1).withShortName("3")                        
                    .withLongName("3DES")                                           .withDescription("Triple DES")                                           .create()).create();    }    static Group buildInputGroup() {        return gbuilder.withName("Input").withDescription("Input").withMinimum(1)                       .withMaximum(1)                       .withOption(obuilder.withId(2).withShortName("f")                                           .withLongName("file")                                           .withDescription("Input file")                                           .withArgument(abuilder.withName(                    "file").withMinimum(1).withMaximum(1).create()).create())                       .withOption(obuilder.withId(3).withShortName("s")                                           .withLongName("string")                                           .withDescription("Input string")                                           .withArgument(abuilder.withName(    
                 "string").withMinimum(1).withMaximum(1).create()).create())                       .create();    }    static Group buildEncryptionServiceGroup(Group[] nestedGroups) {        gbuilder.withName("encryptionService")                .withOption(obuilder.withId(4).withShortName("h")                                    .withLongName("help")                                    .withDescription("Print this message")                                    .create()).withOption(obuilder.withShortName(                "k").withLongName("key").withDescription("Encryption key")                                                                  .create());        for (int i = 0; i < nestedGroups.length; i++) {            gbuilder.withOption(nestedGroups[i]);        }        return gbuilder.create();    }    public void testNestedGroup()        throws OptionException {        final String[] args = {                "-eb",                "--file",                "/tmp/filename.txt"     
        };        Group[] nestedGroups = {                buildActionGroup(),                buildAlgorithmGroup(),                buildInputGroup()            };        Parser parser = new Parser();        parser.setGroup(buildEncryptionServiceGroup(nestedGroups));        CommandLine commandLine = parser.parse(args);        assertTrue("/tmp/filename.txt".equals(commandLine.getValue("-f")));        assertTrue(commandLine.hasOption("-e"));        assertTrue(commandLine.hasOption("-b"));        assertFalse(commandLine.hasOption("-d"));    }    public void testNestedGroupHelp() {        Group[] nestedGroups = {                buildActionGroup(),                buildAlgorithmGroup(),                buildInputGroup()            };        HelpFormatter helpFormatter = new HelpFormatter();        helpFormatter.setGroup(buildEncryptionServiceGroup(nestedGroups));        final StringWriter out = new StringWriter();        helpFormatter.setPrintWriter(new PrintWriter(out));        try 
 {            helpFormatter.print();            final BufferedReader bufferedReader = new BufferedReader(new StringReader(                        out.toString()));            final String[] expected = new String[] {                    "Usage:                                                                          ",                    " [-h -k -e|-d -b|-3 -f <file>|-s <string>]                                      ",                    "encryptionService                                                               ",                    "  -h (--help)               Print this message                                  ",                    "  -k (--key)                Encryption key                                      ",                    "  Action                    Action                                              ",                    "    -e (--encrypt)          Encrypt input                                       ",                    "    -d (--decrypt)          Decry
 pt input                                       ",                    "  Algorithm                 Encryption Algorithm                                ",                    "    -b (--blowfish)         Blowfish                                            ",                    "    -3 (--3DES)             Triple DES                                          ",                    "  Input                     Input                                               ",                    "    -f (--file) file        Input file                                          ",                    "    -s (--string) string    Input string                                        "                };            List actual = new ArrayList(expected.length);            String input;            while ((input = bufferedReader.readLine()) != null) {                actual.add(input);            }            // Show they are the same number of lines            assertEquals("Help text lines should be " + ex
 pected.length,                actual.size(), expected.length);            for (int i = 0; i < expected.length; i++) {                if (!expected[i].equals(actual.get(i))) {                    for (int x = 0; x < expected.length; i++) {                        System.out.println("   " + expected[i]);                        System.out.println((expected[i].equals(actual.get(i))                            ? "== "                            : "!= ") + actual.get(i));                    }                }                assertEquals(expected[i], actual.get(i));            }        }        catch (IOException e) {            fail(e.getLocalizedMessage());        }    }}
\ No newline at end of file

Modified: commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/OptionTestCase.java
URL: http://svn.apache.org/viewvc/commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/OptionTestCase.java?rev=639941&r1=639940&r2=639941&view=diff
==============================================================================
--- commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/OptionTestCase.java (original)
+++ commons/proper/cli/trunk/src/test/org/apache/commons/cli2/option/OptionTestCase.java Fri Mar 21 19:49:41 2008
@@ -1,55 +1 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.cli2.option;
-
-import java.util.List;
-
-import org.apache.commons.cli2.CLITestCase;
-import org.apache.commons.cli2.Option;
-import org.apache.commons.cli2.OptionException;
-import org.apache.commons.cli2.WriteableCommandLine;
-import org.apache.commons.cli2.commandline.WriteableCommandLineImpl;
-
-/**
- * @author Rob Oxspring
- */
-public abstract class OptionTestCase extends CLITestCase {
-
-    public static WriteableCommandLine commandLine(
-        final Option option,
-        final List args) {
-        return new WriteableCommandLineImpl(option, args);
-    }
-
-    public abstract void testTriggers();
-
-    public abstract void testPrefixes();
-
-    public abstract void testCanProcess();
-
-    public abstract void testProcess() throws OptionException;
-
-    public abstract void testValidate() throws OptionException;
-
-    public abstract void testAppendUsage() throws OptionException;
-
-    public abstract void testGetPreferredName();
-
-    public abstract void testGetDescription();
-
-    public abstract void testHelpLines();
-}
+/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.commons.cli2.option;import java.util.List;import org.apache.commons.cli2.CLITestCase;import org.apache.commons.cli2.Option;import org.apache.commons.cli2.OptionException;import org.ap
 ache.commons.cli2.WriteableCommandLine;import org.apache.commons.cli2.commandline.WriteableCommandLineImpl;/** * @author Rob Oxspring */public abstract class OptionTestCase extends CLITestCase {    public static WriteableCommandLine commandLine(        final Option option,        final List args) {        return new WriteableCommandLineImpl(option, args);    }    public abstract void testTriggers();    public abstract void testPrefixes();    public abstract void testCanProcess();    public abstract void testProcess() throws OptionException;    public abstract void testValidate() throws OptionException;    public abstract void testAppendUsage() throws OptionException;    public abstract void testGetPreferredName();    public abstract void testGetDescription();    public abstract void testHelpLines();}
\ No newline at end of file