mirror of
https://github.com/LukeHagar/connexion.git
synced 2025-12-06 04:19:26 +00:00
Split header by comma (#1279)
* Split header by comma When specifying array of enum strings in header, it needs to be split according to commas. * Add test Add test where value is array of enums, and injected as header
This commit is contained in:
@@ -60,6 +60,8 @@ def coerce_type(param, value, parameter_type, parameter_name=None):
|
||||
parameter_name = parameter_name if parameter_name else param.get('name')
|
||||
if param_type == "array":
|
||||
converted_params = []
|
||||
if parameter_type == "header":
|
||||
value = value.split(',')
|
||||
for v in value:
|
||||
try:
|
||||
converted = make_type(v, param_schema["items"]["type"])
|
||||
|
||||
@@ -48,6 +48,14 @@ def test_get_explodable_object_parameter():
|
||||
'required': True, 'name': 'foo', 'style': 'deepObject', 'explode': True}
|
||||
result = ParameterValidator.validate_parameter('query', {'bar': 1}, param)
|
||||
assert result is None
|
||||
|
||||
|
||||
def test_get_valid_parameter_with_enum_array_header():
|
||||
value = 'VALUE1,VALUE2'
|
||||
param = {'schema': {'type': 'array', 'items': {'type': 'string', 'enum': ['VALUE1', 'VALUE2']}},
|
||||
'name': 'test_header_param'}
|
||||
result = ParameterValidator.validate_parameter('header', value, param)
|
||||
assert result is None
|
||||
|
||||
|
||||
def test_invalid_type(monkeypatch):
|
||||
|
||||
Reference in New Issue
Block a user