diff options
Diffstat (limited to 'kpov_judge/add_task.py')
-rwxr-xr-x | kpov_judge/add_task.py | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/kpov_judge/add_task.py b/kpov_judge/add_task.py index 066efed..5b77668 100755 --- a/kpov_judge/add_task.py +++ b/kpov_judge/add_task.py @@ -12,12 +12,17 @@ import pymongo from bson import Binary def task_check(results, params): - data = urllib.parse.urlencode({ + data = { 'results': json.dumps(results), - 'params': json.dumps(params) - }).encode() - req = urllib.request.Request('{task_url}/{task_name}/results-token.json'.format(task_url=task_url, task_name=task_name), data) - response = urllib.request.urlopen(req) + 'params': json.dumps({k: v for k, v in params.items() if k != 'token'}), + } + # should be an argument to task_check, but probably better not modify the signature… + if 'token' in params: + data['token'] = params['token'] + + response = urllib.request.urlopen( + '{task_url}/{task_name}/results.json'.format(task_url=task_url, task_name=task_name), + data=urllib.parse.urlencode(data).encode()) response_dict = json.loads(response.read().decode()) hints = response_dict.get('hints', []) hints = ['status: ' + response_dict.get('status', '')] + hints |