dev@locazia: params validation fix
This commit is contained in:
parent
7d29d7449f
commit
3d16e344c3
|
|
@ -43,12 +43,13 @@ app.add_route(s_api_v1_blockchain_send_purchase_content_message, "/api/v1/blockc
|
|||
@app.exception(BaseException)
|
||||
async def s_handle_exception(request, exception):
|
||||
response_buffer = response.json({"error": "An internal server error occurred"}, status=500)
|
||||
response_buffer = await close_db_session(request, response_buffer)
|
||||
|
||||
try:
|
||||
raise exception
|
||||
except AssertionError as e:
|
||||
response_buffer = response.json({"error": str(e)}, status=400)
|
||||
except BaseException as e:
|
||||
make_log("sanic_exception", f"Exception: {e}" + '\n' + str(traceback.format_exc()), level='error')
|
||||
|
||||
response_buffer = await close_db_session(request, response_buffer)
|
||||
return response_buffer
|
||||
|
||||
|
|
|
|||
|
|
@ -5,12 +5,13 @@ from datetime import datetime, timedelta
|
|||
|
||||
def valid_royalty_params(royalty_params):
|
||||
assert sum([x['value'] for x in royalty_params]) == 10000, "Values of royalties should sum to 10000"
|
||||
for field_key, field_value in {
|
||||
'address': lambda x: isinstance(x, str),
|
||||
'value': lambda x: (isinstance(x, int) and 0 <= x <= 10000)
|
||||
}.items():
|
||||
assert field_key in royalty_params, f"No {field_key} provided"
|
||||
assert field_value(royalty_params[field_key]), f"Invalid {field_key} provided"
|
||||
for royalty_param in royalty_params:
|
||||
for field_key, field_value in {
|
||||
'address': lambda x: isinstance(x, str),
|
||||
'value': lambda x: (isinstance(x, int) and 0 <= x <= 10000)
|
||||
}.items():
|
||||
assert field_key in royalty_param, f"No {field_key} provided"
|
||||
assert field_value(royalty_param[field_key]), f"Invalid {field_key} provided"
|
||||
return True
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue