Example #1
0
 def test_argument_type(self):
     argument = parseopt.Argument("-t", dest="abc", type=int)
     assert argument.type is int
     argument = parseopt.Argument("-t", dest="abc", type=str)
     assert argument.type is str
     argument = parseopt.Argument("-t", dest="abc", type=float)
     assert argument.type is float
     with pytest.warns(DeprecationWarning):
         with pytest.raises(KeyError):
             argument = parseopt.Argument("-t", dest="abc", type="choice")
     argument = parseopt.Argument(
         "-t", dest="abc", type=str, choices=["red", "blue"]
     )
     assert argument.type is str
Example #2
0
 def test_argument_processopt(self) -> None:
     argument = parseopt.Argument("-t", type=int)
     argument.default = 42
     argument.dest = "abc"
     res = argument.attrs()
     assert res["default"] == 42
     assert res["dest"] == "abc"
Example #3
0
 def test_argument(self) -> None:
     with pytest.raises(parseopt.ArgumentError):
         # need a short or long option
         argument = parseopt.Argument()
     argument = parseopt.Argument("-t")
     assert argument._short_opts == ["-t"]
     assert argument._long_opts == []
     assert argument.dest == "t"
     argument = parseopt.Argument("-t", "--test")
     assert argument._short_opts == ["-t"]
     assert argument._long_opts == ["--test"]
     assert argument.dest == "test"
     argument = parseopt.Argument("-t", "--test", dest="abc")
     assert argument.dest == "abc"
     assert str(argument) == (
         "Argument(_short_opts: ['-t'], _long_opts: ['--test'], dest: 'abc')"
     )