From 5d6f38f95c22427156a8b8e0862bd1aae7a92d76 Mon Sep 17 00:00:00 2001 From: lianahus Date: Tue, 7 Nov 2023 11:17:37 +0100 Subject: [PATCH] error handling improvements --- apps/remix-ide/src/app/files/fileManager.ts | 2 +- .../run-tab/src/lib/components/contractDropdownUI.tsx | 2 +- .../src/lib/solidity-unit-testing.tsx | 10 +++++++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/remix-ide/src/app/files/fileManager.ts b/apps/remix-ide/src/app/files/fileManager.ts index de6ec7d910a..e9a860d6f41 100644 --- a/apps/remix-ide/src/app/files/fileManager.ts +++ b/apps/remix-ide/src/app/files/fileManager.ts @@ -704,7 +704,7 @@ class FileManager extends Plugin { } async openFile(file?: string) { - if (!file) { + if (!file && file != '') { this.emit('noFileSelected') this.events.emit('noFileSelected') } else { diff --git a/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx b/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx index 14714c4a443..300c8fb0409 100644 --- a/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx +++ b/libs/remix-ui/run-tab/src/lib/components/contractDropdownUI.tsx @@ -370,7 +370,7 @@ export function ContractDropdownUI(props: ContractDropdownProps) { let evmVersion = null try { - evmVersion = JSON.parse(loadedContractData.metadata).settings.evmVersion + if (loadedContractData.metadata) evmVersion = JSON.parse(loadedContractData.metadata).settings.evmVersion } catch (err) {} return (
diff --git a/libs/remix-ui/solidity-unit-testing/src/lib/solidity-unit-testing.tsx b/libs/remix-ui/solidity-unit-testing/src/lib/solidity-unit-testing.tsx index af368e32169..a633d8a7b70 100644 --- a/libs/remix-ui/solidity-unit-testing/src/lib/solidity-unit-testing.tsx +++ b/libs/remix-ui/solidity-unit-testing/src/lib/solidity-unit-testing.tsx @@ -189,9 +189,13 @@ export const SolidityUnitTesting = (props: Record) => { }, []) // eslint-disable-line const updateDirList = (path: string) => { - testTabLogic.dirList(path).then((options: string[]) => { - setPathOptions(options) - }) + try { + testTabLogic.dirList(path).then((options: string[]) => { + setPathOptions(options) + }) + } catch { + console.log("No test directory has been found in the workspace") + } } const handleTestDirInput = async (e: any) => {