本文整理汇总了Python中webargs.core.Parser类的典型用法代码示例。如果您正苦于以下问题:Python Parser类的具体用法?Python Parser怎么用?Python Parser使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Parser类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_parse_required_arg_raises_validation_error
def test_parse_required_arg_raises_validation_error(parse_json, request):
arg = Arg(required=True)
p = Parser()
parse_json.return_value = Missing
with pytest.raises(ValidationError) as excinfo:
p.parse_arg('foo', arg, request)
assert 'Required parameter ' + repr('foo') + ' not found.' in str(excinfo)
开发者ID:Ch00k,项目名称:webargs,代码行数:7,代码来源:test_core.py
示例2: test_parse_cookies_called_when_cookies_is_a_target
def test_parse_cookies_called_when_cookies_is_a_target(parse_cookies, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request)
assert parse_cookies.call_count == 0
p.parse_arg('foo', arg, request, targets=('cookies',))
assert parse_cookies.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:7,代码来源:test_core.py
示例3: test_parse
def test_parse(parse_json, request):
parse_json.return_value = 42
argmap = {
'username': Arg(),
'password': Arg()
}
p = Parser()
ret = p.parse(argmap, request)
assert {'username': 42, 'password': 42} == ret
开发者ID:kenatbasis,项目名称:webargs,代码行数:9,代码来源:test_core.py
示例4: test_handle_error_called_when_parsing_raises_error
def test_handle_error_called_when_parsing_raises_error(parse_json, handle_error, request):
val_err = ValidationError('error occurred')
parse_json.side_effect = val_err
p = Parser()
p.parse({'foo': Arg()}, request, targets=('json',))
assert handle_error.called
parse_json.side_effect = Exception('generic exception')
p.parse({'foo': Arg()}, request, targets=('json',))
assert handle_error.call_count == 2
开发者ID:kenatbasis,项目名称:webargs,代码行数:9,代码来源:test_core.py
示例5: test_custom_error_handler
def test_custom_error_handler(parse_json, request):
class CustomError(Exception):
pass
def error_handler(error):
raise CustomError(error)
parse_json.side_effect = AttributeError('parse_json failed')
p = Parser(error_handler=error_handler)
with pytest.raises(CustomError):
p.parse({'foo': Arg()}, request)
开发者ID:kenatbasis,项目名称:webargs,代码行数:10,代码来源:test_core.py
示例6: test_parse_required_multiple_arg
def test_parse_required_multiple_arg(parse_form, request):
parse_form.return_value = []
arg = Arg(multiple=True, required=True)
p = Parser()
with pytest.raises(ValidationError):
p.parse_arg('foo', arg, request)
parse_form.return_value = None
with pytest.raises(ValidationError):
p.parse_arg('foo', arg, request)
开发者ID:kenatbasis,项目名称:webargs,代码行数:10,代码来源:test_core.py
示例7: test_custom_target_handler
def test_custom_target_handler(request):
request.data = {'foo': 42}
parser = Parser()
@parser.target_handler('data')
def parse_data(req, name, arg):
return req.data.get(name)
result = parser.parse({'foo': Arg(int)}, request, targets=('data', ))
assert result['foo'] == 42
开发者ID:kenatbasis,项目名称:webargs,代码行数:11,代码来源:test_core.py
示例8: test_fallback_used_if_all_other_functions_return_none
def test_fallback_used_if_all_other_functions_return_none(fallback, request):
arg = Arg()
p = Parser()
p.parse({'foo': arg}, request)
fallback.assert_called
开发者ID:Ch00k,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例9: test_parse_required_arg
def test_parse_required_arg(parse_json, request):
arg = Arg(required=True)
parse_json.return_value = 42
p = Parser()
result = p.parse_arg('foo', arg, request, targets=('json', ))
assert result == 42
开发者ID:kenatbasis,项目名称:webargs,代码行数:6,代码来源:test_core.py
示例10: test_targets_as_init_arguments
def test_targets_as_init_arguments(parse_headers, request):
p = Parser(targets=('headers',))
p.parse({'foo': Arg()}, request)
assert parse_headers.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:4,代码来源:test_core.py
示例11: test_parse_files
def test_parse_files(parse_files, request):
p = Parser()
p.parse({'foo': Arg()}, request, targets=('files',))
assert parse_files.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:4,代码来源:test_core.py
示例12: test_parse_form_called_by_parse_arg
def test_parse_form_called_by_parse_arg(parse_form, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request)
assert parse_form.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例13: test_handle_error_reraises_errors
def test_handle_error_reraises_errors():
p = Parser()
with pytest.raises(ValidationError):
p.handle_error(ValidationError('error raised'))
开发者ID:kenatbasis,项目名称:webargs,代码行数:4,代码来源:test_core.py
示例14: test_value_error_raised_if_invalid_target
def test_value_error_raised_if_invalid_target(request):
arg = Arg()
p = Parser()
with pytest.raises(ValueError) as excinfo:
p.parse_arg('foo', arg, request, targets=('invalidtarget', 'headers'))
assert 'Invalid targets arguments: {0}'.format(['invalidtarget']) in str(excinfo)
开发者ID:kenatbasis,项目名称:webargs,代码行数:6,代码来源:test_core.py
示例15: test_parse_json_called_with_source
def test_parse_json_called_with_source(parse_json, request):
arg = Arg(source='bar')
p = Parser()
p.parse_arg('foo', arg, request)
parse_json.assert_called_with(request, 'bar', arg)
开发者ID:Ch00k,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例16: test_parse_json_called_by_parse_arg
def test_parse_json_called_by_parse_arg(parse_json, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request)
assert parse_json.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例17: test_parse_json_not_called_when_json_not_a_target
def test_parse_json_not_called_when_json_not_a_target(parse_json, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request, targets=('form', 'querystring'))
assert parse_json.call_count == 0
开发者ID:kenatbasis,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例18: test_fallback_used_if_all_other_functions_return_none
def test_fallback_used_if_all_other_functions_return_none(fallback, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request)
assert fallback.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例19: test_parse_querystring_called_by_parse_arg
def test_parse_querystring_called_by_parse_arg(parse_querystring, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request)
assert parse_querystring.called
开发者ID:kenatbasis,项目名称:webargs,代码行数:5,代码来源:test_core.py
示例20: test_parse_json_called_by_parse_arg
def test_parse_json_called_by_parse_arg(parse_json, request):
arg = Arg()
p = Parser()
p.parse_arg('foo', arg, request)
parse_json.assert_called_with(request, 'foo', arg)
开发者ID:Ch00k,项目名称:webargs,代码行数:5,代码来源:test_core.py
注:本文中的webargs.core.Parser类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论