From 9e0ab91799e67dd92fd1cae5e3ea0ce8d4d20168 Mon Sep 17 00:00:00 2001 From: Julen Landa Alustiza Date: Sep 26 2018 11:58:22 +0000 Subject: Handle exceptions from resultdb_api gracefully Fixes #7 Merges #10 --- diff --git a/resultsdb_frontend/controllers/main.py b/resultsdb_frontend/controllers/main.py index 44e7166..128a982 100644 --- a/resultsdb_frontend/controllers/main.py +++ b/resultsdb_frontend/controllers/main.py @@ -63,7 +63,10 @@ def testcase_tokenizer(): @main.route('/groups') def groups(): - groups = RDB_API.get_groups(**dict(request.args)) + try: + groups = RDB_API.get_groups(**dict(request.args)) + except ResultsDBapiException as e: + return str(e) return render_template('groups.html', groups = groups) @main.route('/groups/') @@ -78,7 +81,10 @@ def group(group_id): @main.route('/results') def results(): args = dict(request.args) - results = RDB_API.get_results(**args) + try: + results = RDB_API.get_results(**args) + except ResultsDBapiException as e: + return str(e) for result in results['data']: result['groups'] = (len(result['groups']), ','.join(result['groups'])) return render_template('results.html', results = results) @@ -89,7 +95,10 @@ def result(result_id): result = RDB_API.get_result(id = result_id) except ResultsDBapiException as e: return str(e) - result['groups'] = (len(result['groups']), ','.join(result['groups'])) + try: + result['groups'] = (len(result['groups']), ','.join(result['groups'])) + except KeyError as e: + result['groups'] = (0, '') return render_template('result_detail.html', result = result) @main.route('/testcases')