From 05761d811ef1c87ccbb765ed06e3056322dfd23e Mon Sep 17 00:00:00 2001 From: orosmatthew Date: Tue, 9 May 2023 17:19:43 -0400 Subject: [PATCH] [extension] Better error when submitting --- extension/bwcontest/src/problemPanel.ts | 18 ++++++++++++------ extension/bwcontest/src/submit.ts | 2 +- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/extension/bwcontest/src/problemPanel.ts b/extension/bwcontest/src/problemPanel.ts index 7e09e6c..9ba406d 100644 --- a/extension/bwcontest/src/problemPanel.ts +++ b/extension/bwcontest/src/problemPanel.ts @@ -104,9 +104,8 @@ export class BWPanel { data.value.teamId, data.value.problemId ); - } catch (reason) { - vscode.window.showErrorMessage('Unable to submit'); - console.error(reason); + } catch (err: any) { + vscode.window.showErrorMessage(err.message ?? 'Submission unsuccessful'); break; } vscode.window.showInformationMessage('Submitted!'); @@ -135,9 +134,16 @@ export class BWPanel { ), data.value.problemPascalName, data.value.input - ).then((output) => { - this._panel.webview.postMessage({ type: 'onOutput', value: output }); - }); + ) + .then((output) => { + this._panel.webview.postMessage({ type: 'onOutput', value: output }); + }) + .catch(() => { + this._panel.webview.postMessage({ + type: 'onOutput', + value: '[An error occurred while running]' + }); + }); break; } case 'onStartup': { diff --git a/extension/bwcontest/src/submit.ts b/extension/bwcontest/src/submit.ts index 614df6b..c386657 100644 --- a/extension/bwcontest/src/submit.ts +++ b/extension/bwcontest/src/submit.ts @@ -58,6 +58,6 @@ export async function submitProblem( throw Error('Failed to post submission'); } if (!res.data.success) { - throw Error('Submission post unsuccessful'); + throw Error(res.data.message ?? 'Unknown error'); } }