diff --git a/apps/remix-ide-e2e/src/helpers/init.ts b/apps/remix-ide-e2e/src/helpers/init.ts index e934ae2f7b..8b56b54b5a 100644 --- a/apps/remix-ide-e2e/src/helpers/init.ts +++ b/apps/remix-ide-e2e/src/helpers/init.ts @@ -13,7 +13,7 @@ export default function (browser: NightwatchBrowser, callback: VoidFunction, url .fullscreenWindow(() => { if (preloadPlugins) { initModules(browser, () => { - browser.clickLaunchIcon('solidity') + browser.pause(2000).clickLaunchIcon('solidity') .waitForElementVisible('[for="autoCompile"]') .click('[for="autoCompile"]') .verify.elementPresent('[data-id="compilerContainerAutoCompile"]:checked') diff --git a/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts b/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts index f76f1f3fa2..ba73121c92 100644 --- a/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts +++ b/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts @@ -47,7 +47,7 @@ module.exports = { .click('*[data-id="verticalIconsKindsolidityUnitTesting"]') .waitForElementPresent('*[data-id="testTabGenerateTestFile"]') .click('*[data-id="testTabGenerateTestFile"]') - // .clickLaunchIcon('filePanel') + .clickLaunchIcon('filePanel') .waitForElementPresent('*[title="default_workspace/tests/simple_storage_test.sol"]') .removeFile('tests/simple_storage_test.sol', 'default_workspace') }, diff --git a/libs/remix-ui/solidity-unit-testing/src/lib/logic/testTabLogic.ts b/libs/remix-ui/solidity-unit-testing/src/lib/logic/testTabLogic.ts index 87a6f33d80..6179adb62c 100644 --- a/libs/remix-ui/solidity-unit-testing/src/lib/logic/testTabLogic.ts +++ b/libs/remix-ui/solidity-unit-testing/src/lib/logic/testTabLogic.ts @@ -38,20 +38,23 @@ export class TestTabLogic { } // eslint-disable-next-line @typescript-eslint/no-explicit-any - generateTestFile (errorCb:any) { + async generateTestFile (errorCb:any) { let fileName = this.fileManager.currentFile() const hasCurrent = !!fileName && this.fileManager.currentFile().split('.').pop().toLowerCase() === 'sol' if (!hasCurrent) fileName = this.currentPath + '/newFile.sol' - const fileProvider = this.fileManager.fileProviderOf(this.currentPath) + const fileProvider = await this.fileManager.fileProviderOf(this.currentPath) if (!fileProvider) return const splittedFileName = fileName.split('/') const fileNameToImport = (!hasCurrent) ? fileName : this.currentPath + '/' + splittedFileName[splittedFileName.length - 1] - this.helper.createNonClashingNameWithPrefix(fileNameToImport, fileProvider, '_test', (error: Error, newFile: string) => { + this.helper.createNonClashingNameWithPrefix(fileNameToImport, fileProvider, '_test', async (error: Error, newFile: string) => { if (error) return errorCb('Failed to create file. ' + newFile + ' ' + error) - const isFileCreated = fileProvider.set(newFile, this.generateTestContractSample(hasCurrent, fileName)) - if (!isFileCreated) return errorCb('Failed to create test file ' + newFile) - this.fileManager.open(newFile) - this.fileManager.syncEditor(newFile) + try{ + await fileProvider.set(newFile, this.generateTestContractSample(hasCurrent, fileName)) + await this.fileManager.open(newFile) + await this.fileManager.syncEditor(newFile) + }catch(e){ + return errorCb('Failed to create test file ' + newFile) + } }) } 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 36cd05b73c..30f1b2e0df 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 @@ -680,7 +680,7 @@ export const SolidityUnitTesting = (props: Record) => { // eslint-d title="Generate sample test file." disabled={disableGenerateButton} onClick={async () => { - testTabLogic.generateTestFile((err:any) => { if (err) setToasterMsg(err)}) // eslint-disable-line @typescript-eslint/no-explicit-any + await testTabLogic.generateTestFile((err:any) => { if (err) setToasterMsg(err)}) // eslint-disable-line @typescript-eslint/no-explicit-any await updateForNewCurrent() }} >