Exemplo n.º 1
0
    def test_parse(self):
        command = TestCommand()
        command.add_option("foo", Option("-a", Boolean()))
        self.assert_equal(
            command.run(["-a"]),
            ((), {"foo": True})
        )

        command.add_option("bar", Option("-b", Boolean(store=False)))
        self.assert_equal(
            command.run(["-b"]),
            ((), {"bar": False})
        )
Exemplo n.º 2
0
    def parse_test(self):
        command = TestCommand()
        command.add_option("foo", Option("-a", positional()))
        for args, expected in single:
            self.assert_equal(
                command.run(["-a"] + args),
                ((), {"foo": expected})
            )

        command.add_option("bar", Option("-b", positional(remaining=True)))
        for args, expected in remaining:
            self.assert_equal(
                command.run(["-b"] + args, passthrough_errors=True),
                ((), {"bar": expected})
            )

        command.add_option(
            "baz",
            Option("-c", positional(), positional(optional=True))
        )
        for args, expected in optional:
            self.assert_equal(
                command.run(["-c"] + args, passthrough_errors=True),
                ((), {"baz": expected})
            )