diff --git a/apps/remix-ide-e2e/src/tests/compiler_api.test.ts b/apps/remix-ide-e2e/src/tests/compiler_api.test.ts index c003081458..9c82762a49 100644 --- a/apps/remix-ide-e2e/src/tests/compiler_api.test.ts +++ b/apps/remix-ide-e2e/src/tests/compiler_api.test.ts @@ -34,6 +34,14 @@ module.exports = { .journalChildIncludes(`\\"optimizer\\":{\\"enabled\\":true,\\"runs\\":300}`) }, + 'Should compile using "compileWithParamaters" API with optimization off check default runs': function (browser: NightwatchBrowser) { + browser + .addFile('test_jsCompileWithOptimizationDefault.js', { content: jsCompileWithOptimizationDefault }) + .executeScript('remix.exeCurrent()') + .pause(10000) + .journalChildIncludes(`\\"optimizer\\":{\\"enabled\\":false,\\"runs\\":200}`) + }, + 'Should update the compiler configuration with "setCompilerConfig" API': function (browser: NightwatchBrowser) { browser .addFile('test_updateConfiguration.js', { content: updateConfiguration }) @@ -111,11 +119,28 @@ const jsCompileWithOptimization = `(async () => { } const result = await remix.call('solidity', 'compileWithParameters', contract, params) console.log('result ', result) + } catch (e) { + console.log(e.message) + } +})()` + +const jsCompileWithOptimizationDefault = `(async () => { + try { + const contract = { + "storage.sol": {content : \`${simpleContract}\` } + } + console.log('compile') + const params = { + optimize: false, + } + const result = await remix.call('solidity', 'compileWithParameters', contract, params) + console.log('result ', result) } catch (e) { console.log(e.message) } })()` + const updateConfiguration = `(async () => { try { const params = { diff --git a/apps/remix-ide/src/app/tabs/compileTab/compilerContainer.js b/apps/remix-ide/src/app/tabs/compileTab/compilerContainer.js index 6d3018c9dc..84fb3c80fd 100644 --- a/apps/remix-ide/src/app/tabs/compileTab/compilerContainer.js +++ b/apps/remix-ide/src/app/tabs/compileTab/compilerContainer.js @@ -346,7 +346,9 @@ class CompilerContainer { this.compileTabLogic.setOptimize(!!this._view.optimize.checked) if (this.compileTabLogic.optimize) { this._view.runs.removeAttribute('disabled') + this.compileTabLogic.setRuns(parseInt(this._view.runs.value)) } else { + this.compileTabLogic.setRuns(200) this._view.runs.setAttribute('disabled', '') } this.compileIfAutoCompileOn()