@@ -132,6 +132,9 @@ class JSONRPCController(WSGIController):
self._req_id = json_body['id']
self._req_method = json_body['method']
self._request_params = json_body['args']
if not isinstance(self._request_params, dict):
self._request_params = {}
log.debug(
'method: %s, params: %s' % (self._req_method,
self._request_params)
@@ -212,6 +215,7 @@ class JSONRPCController(WSGIController):
)
self._rpc_args = {USER_SESSION_ATTR: u}
self._rpc_args.update(self._request_params)
self._rpc_args['action'] = self._req_method
@@ -155,6 +155,34 @@ class BaseTestApi(object):
expected = 'Missing non optional `repoid` arg in JSON DATA'
self._compare_error(id_, expected, given=response.body)
def test_api_missing_non_optional_param_args_null(self):
id_, params = _build_data(self.apikey, 'get_repo')
params = params.replace('"args": {}', '"args": null')
response = api_call(self, params)
def test_api_missing_non_optional_param_args_bad(self):
params = params.replace('"args": {}', '"args": 1')
def test_api_args_is_null(self):
id_, params = _build_data(self.apikey, 'get_users',)
self.assertEqual(response.status, '200 OK')
def test_api_args_is_bad(self):
def test_api_get_users(self):
Status change: