Пример #1
0
    def test_parse_defaultgetter(self) -> None:
        def defaultget(option):
            if not hasattr(option, "type"):
                return
            if option.type is int:
                option.default = 42
            elif option.type is str:
                option.default = "world"

        parser = parseopt.Parser(processopt=defaultget)
        parser.addoption("--this", dest="this", type=int, action="store")
        parser.addoption("--hello", dest="hello", type=str, action="store")
        parser.addoption("--no", dest="no", action="store_true")
        option = parser.parse([])
        assert option.hello == "world"
        assert option.this == 42
        assert option.no is False
Пример #2
0
 def test_no_help_by_default(self) -> None:
     parser = parseopt.Parser(usage="xyz")
     pytest.raises(UsageError, lambda: parser.parse(["-h"]))
Пример #3
0
def parser() -> parseopt.Parser:
    return parseopt.Parser()
Пример #4
0
 def test_no_help_by_default(self, capsys):
     parser = parseopt.Parser(usage="xyz")
     pytest.raises(SystemExit, lambda: parser.parse(["-h"]))
     out, err = capsys.readouterr()
     assert err.find("error: unrecognized arguments") != -1
Пример #5
0
def parser():
    return parseopt.Parser()
Пример #6
0
def parser() -> parseopt.Parser:
    return parseopt.Parser(_ispytest=True)