Package net.sourceforge.argparse4j.inf

Examples of net.sourceforge.argparse4j.inf.Namespace


    public void testParseArgsWithDefaults() throws ArgumentParserException {
        ap.addArgument("-f").setDefault("foo");
        ap.addArgument("-g").setDefault("bar");
        ap.addArgument("-i").setDefault("alpha");
        ap.setDefault("foo", "FOO");
        Namespace res = ap.parseArgs("-i input".split(" "));
        assertEquals("FOO", res.get("foo"));
        assertEquals("bar", res.get("g"));
        assertEquals("input", res.get("i"));
    }
View Full Code Here


        ap.addArgument("--foo").nargs("*");
        ap.addArgument("--bar").nargs("*").setDefault("bar");
        ap.addArgument("--baz").nargs("*").action(append());
        ap.addArgument("--buzz").nargs("*").action(append()).setDefault("buzz");

        Namespace res = ap.parseArgs(zeroargs);
        assertEquals(null, res.get("foo"));
        assertEquals("bar", res.get("bar"));
        assertEquals(null, res.get("baz"));
        assertEquals("buzz", res.get("buzz"));

        // Make sure that empty list overwrites previous arguments.
        res = ap.parseArgs("--foo 1 2 --foo".split(" "));
        assertEquals(list(), res.get("foo"));

        // Make sure that empty list overwrites default value.
        res = ap.parseArgs("--bar".split(" "));
        assertEquals(list(), res.get("bar"));

        // Make sure that empty list is appended
        res = ap.parseArgs("--baz".split(" "));
        assertEquals(list(list()), res.get("baz"));

        // Make sure that empty list overwrites default value
        res = ap.parseArgs("--buzz".split(" "));
        assertEquals(list(list()), res.get("buzz"));

        // sanity check: Make sure that given list overwrites default value
        res = ap.parseArgs("--buzz 1 2".split(" "));
        assertEquals(list(list("1", "2")), res.get("buzz"));
    }
View Full Code Here

        assertEquals(list(list("1", "2")), res.get("buzz"));
    }

    @Test
    public void testParseArgsWithPosargNargsEmptyList() throws ArgumentParserException {
        Namespace res;

        ap.addArgument("foo").nargs("*");
        res = ap.parseArgs(zeroargs);
        assertEquals(list(), res.get("foo"));

        ap = new ArgumentParserImpl("argparse4j");
        ap.addArgument("foo").nargs("*").setDefault("foo");
        // Make sure that default value is kept
        res = ap.parseArgs(zeroargs);
        assertEquals("foo", res.get("foo"));
        // Make sure that given argument list overwrites default.
        res = ap.parseArgs("a b".split(" "));
        assertEquals(list("a", "b"), res.get("foo"));

        ap = new ArgumentParserImpl("argparse4j");
        ap.addArgument("foo").nargs("*").action(append());
        // Make sure that empty list is returned.
        res = ap.parseArgs(zeroargs);
        assertEquals(list(), res.get("foo"));

        ap = new ArgumentParserImpl("argparse4j");
        ap.addArgument("foo").nargs("*").action(append()).setDefault("foo");
        // Make sure that default stays intact without positional argument
        res = ap.parseArgs(zeroargs);
        assertEquals("foo", res.get("foo"));
        // Make sure that given argument list overwrites default.
        res = ap.parseArgs("a b".split(" "));
        assertEquals(list(list("a", "b")), res.get("foo"));
    }
View Full Code Here

        }

        ap.addArgument("f").nargs("*").setDefault(list("default"));
        MockAction action = new MockAction();
        ap.addArgument("b").nargs("*").setDefault(false).action(action);
        Namespace res = ap.parseArgs(new String[] {});
        assertEquals(list("default"), res.get("f"));
        assertEquals(false, action.invoked);
    }
View Full Code Here

    @Test
    public void testParseArgsWithDefaultControlSuppress()
            throws ArgumentParserException {
        ap.addArgument("-f");
        ap.addArgument("-g").setDefault(SUPPRESS);
        Namespace res = ap.parseArgs(new String[] {});
        assertTrue(res.getAttrs().containsKey("f"));
        assertFalse(res.getAttrs().containsKey("g"));
    }
View Full Code Here

    public void testParseArgsWithSeparator() throws ArgumentParserException {
        ap.addArgument("--foo");
        ap.addArgument("-2");
        ap.addArgument("bar");
        ap.addArgument("car");
        Namespace res = ap.parseArgs("-- -2 --".split(" "));
        assertEquals("-2", res.get("bar"));
        assertEquals("--", res.get("car"));
    }
View Full Code Here

    @Test
    public void testParseArgsWithMutexGroup() throws ArgumentParserException {
        MutuallyExclusiveGroup group = ap.addMutuallyExclusiveGroup("mutex");
        group.addArgument("--foo");
        group.addArgument("--bar");
        Namespace res = ap.parseArgs("--foo bar".split(" "));
        assertEquals("bar", res.get("foo"));
    }
View Full Code Here

    @Test
    public void testParseArgsWithMutexGroupRequired() throws ArgumentParserException {
        MutuallyExclusiveGroup group = ap.addMutuallyExclusiveGroup("mutex").required(true);
        group.addArgument("--foo");
        group.addArgument("--bar");
        Namespace res = ap.parseArgs("--foo bar".split(" "));
        assertEquals("bar", res.get("foo"));
    }
View Full Code Here

    public void testParseArgsWithMutexGroupConcat() throws ArgumentParserException {
        MutuallyExclusiveGroup group = ap.addMutuallyExclusiveGroup("mutex").required(true);
        group.addArgument("-a").action(Arguments.storeTrue());
        group.addArgument("-b").action(Arguments.storeTrue());
        ap.addArgument("-c");
        Namespace res = ap.parseArgs("-acfoo".split(" "));
        assertEquals(true, res.getBoolean("a"));
        assertEquals("foo", res.get("c"));
    }
View Full Code Here

        }
    }

    @Test
    public void testParseArgsWithAmbiguousOpts() throws ArgumentParserException {
        Namespace res;
        ap.addArgument("-a").action(storeTrue());
        ap.addArgument("-b");
        ap.addArgument("-aaa").action(storeTrue());
        ap.addArgument("-bbb").action(storeTrue());

        // Exact match -aaa
        res = ap.parseArgs("-aaa".split(" "));
        assertTrue(res.getBoolean("aaa"));
        // Exact match -a
        res = ap.parseArgs("-a".split(" "));
        assertTrue(res.getBoolean("a"));
        // -aa is ambiguous
        try {
            res = ap.parseArgs("-aa".split(" "));
            fail();
        } catch(ArgumentParserException e) {
            assertEquals("ambiguous option: -aa could match -a, -aaa",
                    e.getMessage());
        }
        // Exact match -b
        res = ap.parseArgs("-bx".split(" "));
        assertEquals("x", res.get("b"));
        // Exact match -bbb
        res = ap.parseArgs("-bbb".split(" "));
        assertTrue(res.getBoolean("bbb"));
        try {
            res = ap.parseArgs("-bb".split(" "));
            fail();
        } catch(ArgumentParserException e) {
            assertEquals("ambiguous option: -bb could match -b, -bbb",
View Full Code Here

TOP

Related Classes of net.sourceforge.argparse4j.inf.Namespace

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.