From b9dba6bacd4d6bc56ff5e240f0ed9ce58817c0f2 Mon Sep 17 00:00:00 2001 From: aniket-engg Date: Mon, 17 Jan 2022 17:44:34 +0530 Subject: [PATCH] fix multiple test file selection --- .../src/lib/solidity-unit-testing.tsx | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) 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 c8952801f8..7980d43562 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 @@ -67,6 +67,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d let [readyTestsNumber, setReadyTestsNumber] = useState(0) // eslint-disable-line let [runningTestsNumber, setRunningTestsNumber] = useState(0) // eslint-disable-line + const areTestsRunning = useRef(false) const hasBeenStopped = useRef(false) const isDebugging = useRef(false) const allTests = useRef([]) @@ -74,7 +75,6 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d const currentErrors:any = useRef([]) // eslint-disable-line @typescript-eslint/no-explicit-any const defaultPath = 'tests' - let areTestsRunning = false let runningTestFileName: string const filesContent: Record> = {} @@ -113,7 +113,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d allTests.current = tests selectedTests.current = [...allTests.current] updateTestFileList() - if (!areTestsRunning) await updateRunAction(file) + if (!areTestsRunning.current) await updateRunAction(file) } catch (e: any) { // eslint-disable-line @typescript-eslint/no-explicit-any console.log(e) setToasterMsg(e) @@ -500,7 +500,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d if (selectedTests.current?.length !== 0) { setDisableRunButton(false) } - areTestsRunning = false + areTestsRunning.current = false } } @@ -547,7 +547,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d } const runTests = () => { - areTestsRunning = true + areTestsRunning.current = true hasBeenStopped.current = false readyTestsNumber = 0 setReadyTestsNumber(readyTestsNumber) @@ -568,8 +568,8 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d const updateRunAction = async (currentFile: any = null) => { // eslint-disable-line @typescript-eslint/no-explicit-any const isSolidityActive = await testTab.appManager.isActive('solidity') - if (!isSolidityActive || !selectedTests.current?.length) { - // setDisableRunButton(true) + if (!isSolidityActive || !selectedTests.current.length) { + setDisableRunButton(true) if (!currentFile || (currentFile && currentFile.split('.').pop().toLowerCase() !== 'sol')) { setRunButtonTitle('No solidity file selected') } else { @@ -592,7 +592,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d const toggleCheckbox = (eChecked: boolean, index: number) => { testFiles[index].checked = eChecked - setTestFiles(testFiles) + setTestFiles([...testFiles]) selectedTests.current = getCurrentSelectedTests() if (eChecked) { setCheckSelectAll(true) @@ -609,7 +609,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d const checkAll = (event: any) => { // eslint-disable-line @typescript-eslint/no-explicit-any testFiles.forEach((testFileObj) => testFileObj.checked = event.target.checked) - setTestFiles(testFiles) + setTestFiles([...testFiles]) setCheckSelectAll(event.target.checked) if (event.target.checked) { selectedTests.current = getCurrentSelectedTests() @@ -627,7 +627,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d } else testFiles = [] - setTestFiles(testFiles) + setTestFiles([...testFiles]) } return ( @@ -708,7 +708,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d /> -
{testFiles?.length ? testFiles.map((testFileObj: TestObject, index) => { +
{testFiles.length ? testFiles.map((testFileObj: TestObject, index) => { const elemId = `singleTest${testFileObj.fileName}` return (