示例#1
0
def test_validate_no_arguments():
    validate_args(lambda: None)
示例#2
0
def test_validate_keywords():
    validate_args(lambda **kwargs: None, foo="bar")
示例#3
0
def test_validate_object_method():
    class FooClass:
        def foo(self, one, two):
            return "bar"

    validate_args(FooClass().foo, "one", "two")
示例#4
0
def test_validate_positionals():
    validate_args(lambda x: None, 1)
示例#5
0
def test_validate_positionals_not_passed():
    with pytest.raises(InvalidParamsError):
        validate_args(lambda x: None, foo="bar")
示例#6
0
def test_validate_no_arguments_too_many_positionals():
    with pytest.raises(InvalidParamsError):
        validate_args(lambda: None, "foo")
示例#7
0
def test_validate_no_arguments():
    assert validate_args(lambda: None) == ""
示例#8
0
def test_validate_positionals_not_passed():
    assert (validate_args(lambda x: None,
                          foo="bar") == "missing a required argument: 'x'")
示例#9
0
def test_validate_positionals():
    assert validate_args(lambda x: None, 1) == ""
示例#10
0
def test_validate_no_arguments_too_many_positionals():
    assert validate_args(lambda: None,
                         "foo") == "too many positional arguments"