mirror of
https://github.com/LukeHagar/connexion.git
synced 2025-12-06 12:27:45 +00:00
URI parsing decorator (#613)
- array logic refactored into one place. - validation.py and parameter.py no longer try to join the array, and the split it again. - validation of defaults now works, because the validator is given the correct type. - some additional classes that change the behavior of deduplicating query parameters that are defined multiple times - **AlwaysMultiURIParser** that is backwards compatible, warts and all (used by default) - **Swagger2URIParser** that adheres to the spec's definition of `collectionFormat: multi` and uses the last-defined query parameter value (ex. `query?a=1&a=2` => `a = 2`) - **FirstValueURIParser** that behaves like Swagger2URIParser, except that the first-defined value is used (ex. `query?a=1&a=2` => `a=1`)
This commit is contained in:
committed by
João Santos
parent
50bcd120f6
commit
2f074998e3
@@ -42,6 +42,10 @@ def test_required_query_param(simple_app):
|
||||
def test_array_query_param(simple_app):
|
||||
app_client = simple_app.app.test_client()
|
||||
headers = {'Content-type': 'application/json'}
|
||||
url = '/v1.0/test_array_csv_query_param'
|
||||
response = app_client.get(url, headers=headers)
|
||||
array_response = json.loads(response.data.decode('utf-8', 'replace')) # type: [str]
|
||||
assert array_response == ['squash', 'banana']
|
||||
url = '/v1.0/test_array_csv_query_param?items=one,two,three'
|
||||
response = app_client.get(url, headers=headers)
|
||||
array_response = json.loads(response.data.decode('utf-8', 'replace')) # type: [str]
|
||||
|
||||
Reference in New Issue
Block a user