diff --git a/apps/remix-ide-e2e/src/commands/createContract.ts b/apps/remix-ide-e2e/src/commands/createContract.ts index 7fb00da086b..87dc713b5f6 100644 --- a/apps/remix-ide-e2e/src/commands/createContract.ts +++ b/apps/remix-ide-e2e/src/commands/createContract.ts @@ -18,12 +18,12 @@ function createContract (browser: NightwatchBrowser, inputParams: string, callba browser.setValue('.udapp_contractActionsContainerSingle > input', inputParams, function () { browser .pause(1000) // wait to get the button enabled - .waitForElementVisible('.udapp_contractActionsContainerSingle button') + .waitForElementVisible('.udapp_contractActionsContainerSingle button', 60000) .click('.udapp_contractActionsContainerSingle button').pause(500).perform(function () { callback() }) }) } else { browser - .waitForElementVisible('.udapp_contractActionsContainerSingle button') + .waitForElementVisible('.udapp_contractActionsContainerSingle button', 60000) .click('.udapp_contractActionsContainerSingle button') .pause(500) .perform(function () { callback() }) diff --git a/apps/remix-ide-e2e/src/commands/verifyLoad.ts b/apps/remix-ide-e2e/src/commands/verifyLoad.ts index ce010a8a4bc..62fc5db9503 100644 --- a/apps/remix-ide-e2e/src/commands/verifyLoad.ts +++ b/apps/remix-ide-e2e/src/commands/verifyLoad.ts @@ -3,7 +3,7 @@ import EventEmitter from 'events' class VerifyLoad extends EventEmitter { command(this: NightwatchBrowser) { - browser.saveScreenshot('./reports/screenshots/verifyLoad.png').waitForElementPresent({ + browser.waitForElementPresent({ selector: "//span[@data-id='typesloaded']", locateStrategy: 'xpath', timeout: 60000 diff --git a/apps/remix-ide-e2e/src/tests/ai_panel.test.ts b/apps/remix-ide-e2e/src/tests/ai_panel.test.ts index 4f555e904b7..6eb16699e93 100644 --- a/apps/remix-ide-e2e/src/tests/ai_panel.test.ts +++ b/apps/remix-ide-e2e/src/tests/ai_panel.test.ts @@ -235,7 +235,7 @@ const tests = { browser .click('*[data-id="movePluginToLeft"]') .clickLaunchIcon('filePanel') - .waitForElementNotVisible('*[data-id="remix-ai-assistant"]', 5000) + .waitForElementNotVisible('*[data-id="remix-ai-assistant"]', 60000) }, } diff --git a/apps/remix-ide-e2e/src/tests/ballot.test.ts b/apps/remix-ide-e2e/src/tests/ballot.test.ts index 6ef0a999ad7..5505523c089 100644 --- a/apps/remix-ide-e2e/src/tests/ballot.test.ts +++ b/apps/remix-ide-e2e/src/tests/ballot.test.ts @@ -22,7 +22,7 @@ module.exports = { }, 'Deploy Ballot #group1': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('solidity') .testContracts('Untitled.sol', sources[0]['Untitled.sol'], ['Ballot']) .clickLaunchIcon('udapp') @@ -55,10 +55,10 @@ module.exports = { 'Debug Ballot / delegate #group1': function (browser: NightwatchBrowser) { browser.pause(500) .debugTransaction(1) - .waitForElementVisible('*[data-id="buttonNavigatorJumpPreviousBreakpoint"]') + .waitForElementVisible('*[data-id="buttonNavigatorJumpPreviousBreakpoint"]', 60000) .click('*[data-id="buttonNavigatorJumpPreviousBreakpoint"]') .pause(2000) - .waitForElementVisible('#stepdetail') + .waitForElementVisible('#stepdetail', 60000) .goToVMTraceStep(144) .pause(2000) .checkVariableDebug('soliditystate', stateCheck) @@ -97,16 +97,16 @@ module.exports = { .clickLaunchIcon('filePanel') .click('*[data-id="workspacesSelect"]') .click('*[data-id="workspacecreate"]') - .waitForElementPresent('*[data-id="create-remixDefault"]') + .waitForElementPresent('*[data-id="create-remixDefault"]', 60000) .scrollAndClick('*[data-id="create-remixDefault"]') - .waitForElementVisible('*[data-id="modalDialogCustomPromptTextCreate"]') + .waitForElementVisible('*[data-id="modalDialogCustomPromptTextCreate"]', 60000) .scrollAndClick('*[data-id="modalDialogCustomPromptTextCreate"]') .setValue('*[data-id="modalDialogCustomPromptTextCreate"]', 'workspace_remix_default') // eslint-disable-next-line dot-notation .execute(function () { document.querySelector('*[data-id="modalDialogCustomPromptTextCreate"]')['value'] = 'workspace_remix_default' }) .modalFooterOKClick('TemplatesSelection') .pause(1000) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]') + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]', 60000) .addFile('contracts/lib/storage/src/Storage.sol', { content: storageContract}) .addFile('remappings.txt', { content: 'storage=contracts/lib/storage/src' }) .addFile('contracts/Retriever.sol', { content: retrieverContract }) @@ -145,9 +145,9 @@ module.exports = { browser .addFile('cf.json', { content: configFile }) .clickLaunchIcon('solidity') - .waitForElementVisible('*[data-id="scConfigExpander"]') + .waitForElementVisible('*[data-id="scConfigExpander"]', 60000) .click('*[data-id="scConfigExpander"]') - .waitForElementVisible('*[data-id="scFileConfiguration"]', 10000) + .waitForElementVisible('*[data-id="scFileConfiguration"]', 60000) .click('*[data-id="scFileConfiguration"]') // the input field behaves badly, it would often not receive the value, so retrying it a few times for now is the best thing to do .waitForElementVisible({ @@ -170,7 +170,7 @@ module.exports = { timeout: 1000 }) - .waitForElementVisible('*[data-id="scConfigFilePathInput"]', 10000) + .waitForElementVisible('*[data-id="scConfigFilePathInput"]', 60000) .sendKeys('*[data-id="scConfigFilePathInput"]', 'cf.json') .sendKeys('*[data-id="scConfigFilePathInput"]', browser.Keys.ENTER) @@ -201,7 +201,7 @@ module.exports = { timeout: 1000 }) - .waitForElementVisible('*[data-id="scConfigFilePathInput"]', 10000) + .waitForElementVisible('*[data-id="scConfigFilePathInput"]', 60000) .sendKeys('*[data-id="scConfigFilePathInput"]', 'cf.json') .sendKeys('*[data-id="scConfigFilePathInput"]', browser.Keys.ENTER) } @@ -234,7 +234,7 @@ module.exports = { timeout: 1000 }) - .waitForElementVisible('*[data-id="scConfigFilePathInput"]', 10000) + .waitForElementVisible('*[data-id="scConfigFilePathInput"]', 60000) .sendKeys('*[data-id="scConfigFilePathInput"]', 'cf.json') .sendKeys('*[data-id="scConfigFilePathInput"]', browser.Keys.ENTER) } @@ -249,12 +249,12 @@ module.exports = { browser .addFile('sample.yul', { content: yulSample }) .clickLaunchIcon('solidity') - .waitForElementVisible('*[data-id="scConfigExpander"]') + .waitForElementVisible('*[data-id="scConfigExpander"]', 60000) .click('*[data-id="scManualConfiguration"]') - .waitForElementVisible('select[id="compilerLanguageSelector"]', 10000) + .waitForElementVisible('select[id="compilerLanguageSelector"]', 60000) .click('select[id="compilerLanguageSelector"]') .click('select[id="compilerLanguageSelector"] option[value=Yul]') - .waitForElementContainsText('[data-id="compiledContracts"]', 'Contract', 65000) + .waitForElementContainsText('[data-id="compiledContracts"]', 'Contract', 60000) .clickLaunchIcon('udapp') .click('*[data-id="Deploy - transact (not payable)"]') .waitForElementPresent('*[data-id="universalDappUiContractActionWrapper"]', 60000) diff --git a/apps/remix-ide-e2e/src/tests/bottom-bar.test.ts b/apps/remix-ide-e2e/src/tests/bottom-bar.test.ts index 59ab35d929f..63cd69ed9ce 100644 --- a/apps/remix-ide-e2e/src/tests/bottom-bar.test.ts +++ b/apps/remix-ide-e2e/src/tests/bottom-bar.test.ts @@ -17,15 +17,15 @@ module.exports = { const toggleInputSelector = '[data-id="copilot_toggle"]'; browser - .waitForElementVisible('[data-id="remixui_status_bottom_bar"]', 5000) - .waitForElementContainsText(statusTextSelector, 'RemixAI Copilot', 1000) + .waitForElementVisible('[data-id="remixui_status_bottom_bar"]', 60000) + .waitForElementContainsText(statusTextSelector, 'RemixAI Copilot', 60000) .perform((done) => { browser.getText(statusTextSelector, (result) => { const currentStatusText = result.value as string const isCurrentlyDisabled = currentStatusText.includes('(disabled)') const expectedStatusAfterToggle = isCurrentlyDisabled ? '(enabled)' : '(disabled)' browser.click(toggleInputSelector) - .waitForElementContainsText(statusTextSelector, expectedStatusAfterToggle, 10000) + .waitForElementContainsText(statusTextSelector, expectedStatusAfterToggle, 60000) done() }); }); diff --git a/apps/remix-ide-e2e/src/tests/circom.test.ts b/apps/remix-ide-e2e/src/tests/circom.test.ts index 5fda944b711..746ab77fb8a 100644 --- a/apps/remix-ide-e2e/src/tests/circom.test.ts +++ b/apps/remix-ide-e2e/src/tests/circom.test.ts @@ -41,7 +41,7 @@ module.exports = { .waitForElementContainsText('*[data-id="terminalJournal"]', 'Everything went okay') .waitForElementPresent('[data-id="treeViewLitreeViewItemcircuits/.bin/simple_js"]') .openFile('circuits/.bin/simple_js') - .waitForElementPresent('[data-id="treeViewLitreeViewItemcircuits/.bin/simple_js/simple.wasm"]') + .waitForElementPresent('[data-id="treeViewLitreeViewItemcircuits/.bin/simple_js/simple.wasm"]', 60000) }, 'Should compute a witness for a simple circuit #group1': function (browser: NightwatchBrowser) { browser @@ -165,7 +165,7 @@ module.exports = { .click('button[data-id="compile_circuit_btn"]') .waitForElementPresent('[data-id="circuit_feedback"]') .assert.hasClass('[data-id="circuit_feedback"]', 'alert-danger') - .waitForElementContainsText('[data-id="circuit_feedback"]', 'No main specified in the project structure') + .waitForElementContainsText('[data-id="circuit_feedback"]', 'No main specified in the project structure', 60000) }, 'Should auto compile circuit #group4': function (browser: NightwatchBrowser) { browser diff --git a/apps/remix-ide-e2e/src/tests/compile_run_widget.test.ts b/apps/remix-ide-e2e/src/tests/compile_run_widget.test.ts index f9496639fbd..b33fbc1b66f 100644 --- a/apps/remix-ide-e2e/src/tests/compile_run_widget.test.ts +++ b/apps/remix-ide-e2e/src/tests/compile_run_widget.test.ts @@ -16,7 +16,7 @@ module.exports = { browser .openFile('contracts/3_Ballot.sol') .click('[data-id="compile-action"]') - .waitForElementVisible('[data-id="compile_group"] i.fa-check', 10000) + .waitForElementVisible('[data-id="compile_group"] i.fa-check', 60000) .verifyContracts(['Ballot']) }, @@ -24,21 +24,21 @@ module.exports = { browser .openFile('scripts/deploy_with_web3.ts') .click('[data-id="compile-action"]') - .waitForElementVisible('[data-id="compile_group"] i.fa-check', 10000) + .waitForElementVisible('[data-id="compile_group"] i.fa-check', 60000) }, 'Should activate Solidity Static Analysis and show "Solidity Analyzers" title from compile dropdown #group3': function (browser: NightwatchBrowser) { browser .openFile('contracts/3_Ballot.sol') .click('[data-id="compile-dropdown-trigger"]') - .waitForElementVisible('[data-id="compile-dropdown-panel"]', 5000) + .waitForElementVisible('[data-id="compile-dropdown-panel"]', 60000) .click('[data-id="compile-run-analysis-menu-item"]') - .waitForElementVisible('[data-id="compile-run-analysis-menu-item-panel"]', 5000) + .waitForElementVisible('[data-id="compile-run-analysis-menu-item-panel"]', 60000) .click('[data-id="run-remix-analysis-submenu-item"]') - .waitForElementVisible('#icon-panel div[plugin="solidityStaticAnalysis"]', 10000) - .waitForElementVisible('[data-id="sidePanelSwapitTitle"]', 5000) + .waitForElementVisible('#icon-panel div[plugin="solidityStaticAnalysis"]', 60000) + .waitForElementVisible('[data-id="sidePanelSwapitTitle"]', 60000) .assert.textContains('[data-id="sidePanelSwapitTitle"]', 'SOLIDITY ANALYZERS', 'Solidity Analyzers title should be visible.') - .waitForElementVisible('#side-panel', 5000) + .waitForElementVisible('#side-panel', 60000) .verifyContracts(['Ballot']) }, @@ -46,14 +46,14 @@ module.exports = { browser .openFile('contracts/3_Ballot.sol') .click('[data-id="compile-dropdown-trigger"]') - .waitForElementVisible('[data-id="compile-dropdown-panel"]', 5000) + .waitForElementVisible('[data-id="compile-dropdown-panel"]', 60000) .click('[data-id="compile-run-analysis-menu-item"]') - .waitForElementVisible('[data-id="compile-run-analysis-menu-item-panel"]', 5000) + .waitForElementVisible('[data-id="compile-run-analysis-menu-item-panel"]', 60000) .click('[data-id="run-solidity-scan-submenu-item"]') - .waitForElementVisible('[data-id="SolidityScanPermissionHandlerModalDialogModalTitle-react"]', 10000) - .waitForElementVisible('[data-id="SolidityScanPermissionHandler-modal-footer-ok-react"]', 5000) + .waitForElementVisible('[data-id="SolidityScanPermissionHandlerModalDialogModalTitle-react"]', 60000) + .waitForElementVisible('[data-id="SolidityScanPermissionHandler-modal-footer-ok-react"]', 60000) .click('[data-id="SolidityScanPermissionHandler-modal-footer-ok-react"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Scan Summary:', 30000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Scan Summary:', 60000) .verifyContracts(['Ballot']) } } diff --git a/apps/remix-ide-e2e/src/tests/debugger.test.ts b/apps/remix-ide-e2e/src/tests/debugger.test.ts index bd00d9e8dab..a293fff96fd 100644 --- a/apps/remix-ide-e2e/src/tests/debugger.test.ts +++ b/apps/remix-ide-e2e/src/tests/debugger.test.ts @@ -63,7 +63,7 @@ module.exports = { }, 'Should jump through breakpoints #group1': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#editorView') + browser.waitForElementVisible('#editorView', 60000) .execute(() => { (window as any).addRemixBreakpoint(11) }, [], () => { }) @@ -88,11 +88,11 @@ module.exports = { .clickLaunchIcon('solidity') .testContracts('externalImport.sol', sources[1]['externalImport.sol'], ['ERC20']) .clickLaunchIcon('udapp') - .waitForElementPresent('*[data-bs-title="Deploy - transact (not payable)"]', 35000) + .waitForElementPresent('*[data-bs-title="Deploy - transact (not payable)"]', 60000) .selectContract('ERC20') .createContract('"tokenName", "symbol"') .debugTransaction(0) - .waitForElementVisible('#stepdetail') + .waitForElementVisible('#stepdetail', 60000) .waitForElementVisible({ locateStrategy: 'xpath', selector: '//*[@data-id="treeViewLivm trace step" and contains(.,"475")]', @@ -131,13 +131,13 @@ module.exports = { .clickInstance(0) .clickFunction('test1 - transact (not payable)', { types: 'bytes userData', values: '0x000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000015b38da6a701c568545dcfcb03fcb875f56beddc4' }) .debugTransaction(0) - .waitForElementVisible('#stepdetail') + .waitForElementVisible('#stepdetail', 60000) .waitForElementVisible({ locateStrategy: 'xpath', selector: '//*[@data-id="treeViewLivm trace step" and contains(.,"133")]', }) .goToVMTraceStep(261) - .waitForElementPresent('.highlightLine8') + .waitForElementPresent('.highlightLine8', 60000) /* for the test below: source highlight should remain line `bytes32 idAsk = abi.decode(userData[:33], (bytes32));` @@ -159,7 +159,7 @@ module.exports = { .clickLaunchIcon('solidity') .testContracts('locals.sol', sources[3]['locals.sol'], ['testLocals']) .clickLaunchIcon('udapp') - .waitForElementPresent('*[data-bs-title="Deploy - transact (not payable)"]', 40000) + .waitForElementPresent('*[data-bs-title="Deploy - transact (not payable)"]', 60000) .createContract('') .pause(2000) .clearConsole() @@ -259,7 +259,7 @@ module.exports = { .clearValue('*[data-id="modalDialogCustomPromptText"]') .setValue('*[data-id="modalDialogCustomPromptText"]', 'https://remix-rinkeby.ethdevops.io') .modalFooterOKClick() - .waitForElementPresent('*[title="Deploy - transact (not payable)"]', 65000) // wait for the compilation to succeed + .waitForElementPresent('*[title="Deploy - transact (not payable)"]', 60000) // wait for the compilation to succeed .clickLaunchIcon('debugger') .clearValue('*[data-id="debuggerTransactionInput"]') .setValue('*[data-id="debuggerTransactionInput"]', '0x156dbf7d0f9b435dd900cfc8f3264d523dd25733418ddbea1ce53e294f421013') @@ -285,7 +285,7 @@ module.exports = { .goToVMTraceStep(80) .waitForElementVisible('*[data-id="debugGoToRevert"]', 60000) .click('*[data-id="debugGoToRevert"]') - .waitForElementContainsText('*[data-id="asmitems"] div[selected="selected"]', '114 REVERT') + .waitForElementContainsText('*[data-id="asmitems"] div[selected="selected"]', '114 REVERT', 60000) } } diff --git a/apps/remix-ide-e2e/src/tests/defaultLayout.test.ts b/apps/remix-ide-e2e/src/tests/defaultLayout.test.ts index 17403029f0b..ee275cbdecd 100644 --- a/apps/remix-ide-e2e/src/tests/defaultLayout.test.ts +++ b/apps/remix-ide-e2e/src/tests/defaultLayout.test.ts @@ -8,7 +8,7 @@ module.exports = { }, 'Loads Icon\'s Panel': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('div[data-id="verticalIconsHomeIcon"]') .waitForElementVisible('div[plugin="filePanel"]') .waitForElementVisible('div[plugin="pluginManager"]') @@ -34,7 +34,7 @@ module.exports = { 'Loads terminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('div[data-id="terminalCli"]', 10000) + .waitForElementVisible('div[data-id="terminalCli"]', 60000) .journalLastChildIncludes('Welcome to Remix') }, diff --git a/apps/remix-ide-e2e/src/tests/dgit_local.test.ts b/apps/remix-ide-e2e/src/tests/dgit_local.test.ts index 9184d22467b..537629930b7 100644 --- a/apps/remix-ide-e2e/src/tests/dgit_local.test.ts +++ b/apps/remix-ide-e2e/src/tests/dgit_local.test.ts @@ -143,9 +143,7 @@ module.exports = { .click('*[data-id="commits-panel"]') .waitForElementPresent({ selector: `//*[@data-id="commit-summary-testcommit2-"]`, - locateStrategy: 'xpath', - timeout: 60000 - }).pause(2000) + locateStrategy: 'xpath', timeout: 60000 }).pause(2000) }, 'check the log for testcommit2 #group1': async function (browser: NightwatchBrowser) { const logs = await getGitLog('/tmp/git/bare.git') @@ -340,9 +338,7 @@ module.exports = { }) .waitForElementVisible({ selector: "//*[@data-id='branches-panel-content']//*[@data-id='branches-toggle-current-branch-master']", - locateStrategy: 'xpath', - timeout: 60000 - }) + locateStrategy: 'xpath', timeout: 60000 }) }, 'check if test file is gone #group2': function (browser: NightwatchBrowser) { browser diff --git a/apps/remix-ide-e2e/src/tests/editor.test.ts b/apps/remix-ide-e2e/src/tests/editor.test.ts index 3161dfbe20f..514f5245f80 100644 --- a/apps/remix-ide-e2e/src/tests/editor.test.ts +++ b/apps/remix-ide-e2e/src/tests/editor.test.ts @@ -16,7 +16,7 @@ module.exports = { .waitForElementVisible('div[data-id="filePanelFileExplorerTree"]') .openFile('contracts') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) .checkElementStyle('.view-lines', 'font-size', '14px') .click('*[data-id="tabProxyZoomIn"]') .click('*[data-id="tabProxyZoomIn"]') @@ -25,7 +25,7 @@ module.exports = { 'Should zoom out editor #group1': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) .checkElementStyle('.view-lines', 'font-size', '19.6px') .click('*[data-id="tabProxyZoomOut"]') .click('*[data-id="tabProxyZoomOut"]') @@ -34,7 +34,7 @@ module.exports = { 'Should display compile error in editor #group1': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) .setEditorValue(storageContractWithError + 'error') .pause(2000) .waitForElementVisible('.glyph-margin-widgets .fa-exclamation-square', 120000) @@ -49,18 +49,18 @@ module.exports = { '' + function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#editorView') - .waitForElementVisible('.ace_open') + .waitForElementVisible('#editorView', 60000) + .waitForElementVisible('.ace_open', 60000) .click('.ace_start:nth-of-type(1)') - .waitForElementVisible('.ace_closed') + .waitForElementVisible('.ace_closed', 60000) .click('.ace_start:nth-of-type(1)') - .waitForElementVisible('.ace_open') + .waitForElementVisible('.ace_open', 60000) }, 'Should add breakpoint to editor #group1': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#editorView') - .waitForElementNotPresent('.glyph-margin-widgets .fa-circle') + .waitForElementVisible('#editorView', 60000) + .waitForElementNotPresent('.glyph-margin-widgets .fa-circle', 60000) .execute( () => { ;(window as any).addRemixBreakpoint(1) @@ -68,14 +68,14 @@ module.exports = { [], () => {} ) - .waitForElementVisible('.glyph-margin-widgets .fa-circle') + .waitForElementVisible('.glyph-margin-widgets .fa-circle', 60000) }, 'Should load syntax highlighter for ace light theme #group1': '' + function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) .checkElementStyle('.ace_keyword', 'color', aceThemes.light.keyword) .checkElementStyle('.ace_comment.ace_doc', 'color', aceThemes.light.comment) .checkElementStyle('.ace_function', 'color', aceThemes.light.function) @@ -92,7 +92,7 @@ module.exports = { .waitForElementVisible('*[data-id="settingsTabThemeLabelDark"]') .click('*[data-id="settingsTabThemeLabelDark"]') .pause(2000) - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) /* @todo(#2863) ch for class and not colors .checkElementStyle('.ace_keyword', 'color', aceThemes.dark.keyword) .checkElementStyle('.ace_comment.ace_doc', 'color', aceThemes.dark.comment) diff --git a/apps/remix-ide-e2e/src/tests/editorHoverContext.test.ts b/apps/remix-ide-e2e/src/tests/editorHoverContext.test.ts index dc52bcf307c..8ac0c3332c3 100644 --- a/apps/remix-ide-e2e/src/tests/editorHoverContext.test.ts +++ b/apps/remix-ide-e2e/src/tests/editorHoverContext.test.ts @@ -9,7 +9,7 @@ const checkEditorHoverContent = (browser: NightwatchBrowser, path: string, expec .waitForElementVisible(path) .moveToElement(path, offsetLeft, 0) .useCss() - .waitForElementContainsText('.monaco-hover-content', expectedContent).pause(1000) + .waitForElementContainsText('.monaco-hover-content', expectedContent, 60000).pause(1000) } module.exports = { diff --git a/apps/remix-ide-e2e/src/tests/eip7702.test.ts b/apps/remix-ide-e2e/src/tests/eip7702.test.ts index 2e97021512b..2f8af831c92 100644 --- a/apps/remix-ide-e2e/src/tests/eip7702.test.ts +++ b/apps/remix-ide-e2e/src/tests/eip7702.test.ts @@ -68,7 +68,7 @@ module.exports = { .refresh() .clickLaunchIcon('udapp') .switchEnvironment('vm-prague') - .waitForElementNotPresent('*[data-id="delete-delegation"]') + .waitForElementNotPresent('*[data-id="delete-delegation"]', 60000) } } diff --git a/apps/remix-ide-e2e/src/tests/etherscan_api.test.ts b/apps/remix-ide-e2e/src/tests/etherscan_api.test.ts index c259f3e4f3f..d4e6319c080 100644 --- a/apps/remix-ide-e2e/src/tests/etherscan_api.test.ts +++ b/apps/remix-ide-e2e/src/tests/etherscan_api.test.ts @@ -45,7 +45,7 @@ const tests = { .setValue('*[name="contractAddress"]', ['0xfF6A41815582cFD18855c5B90efD1d45784fd4f5', browser.Keys.TAB]) .click('[data-id="verify-contract"]') .waitForElementVisible('[data-id="verify-result"]') - .waitForElementContainsText('[data-id="verify-result"]', 'Contract source code already verified', 15000) + .waitForElementContainsText('[data-id="verify-result"]', 'Contract source code already verified', 60000) }, 'Should call the etherscan plugin api #group1': function (browser: NightwatchBrowser) { diff --git a/apps/remix-ide-e2e/src/tests/fileExplorer.test.ts b/apps/remix-ide-e2e/src/tests/fileExplorer.test.ts index 40e31b311e3..46fdd46d1ad 100644 --- a/apps/remix-ide-e2e/src/tests/fileExplorer.test.ts +++ b/apps/remix-ide-e2e/src/tests/fileExplorer.test.ts @@ -25,7 +25,7 @@ module.exports = { .waitForElementVisible('*[data-id$="fileExplorerTreeItemInput"]') .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', '5_New_contract.sol') .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItem5_New_contract.sol"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItem5_New_contract.sol"]', 60000) }, 'Should rename `5_New_contract.sol` to 5_Renamed_Contract.sol #group1': function (browser: NightwatchBrowser) { diff --git a/apps/remix-ide-e2e/src/tests/file_decorator.test.ts b/apps/remix-ide-e2e/src/tests/file_decorator.test.ts index bdbd8e80da9..1703ef5e27e 100644 --- a/apps/remix-ide-e2e/src/tests/file_decorator.test.ts +++ b/apps/remix-ide-e2e/src/tests/file_decorator.test.ts @@ -19,17 +19,17 @@ module.exports = { .click('[data-id="compile-action"]') .pause(4000) .useXpath() - .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-error-contracts/2_Owner.sol"]', '2') - .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-error-contracts/2_Owner.sol"]', '2') - .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-custom-contracts/2_Owner.sol"]', 'U') - .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-custom-contracts/2_Owner.sol"]', 'U') - .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-warning-contracts/1_Storage.sol"]', '2') - .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-warning-contracts/1_Storage.sol"]', '2') - .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-custom-contracts/3_Ballot.sol"]', 'customtext') - .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-custom-contracts/3_Ballot.sol"]', 'customtext') + .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-error-contracts/2_Owner.sol"]', '2', 60000) + .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-error-contracts/2_Owner.sol"]', '2', 60000) + .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-custom-contracts/2_Owner.sol"]', 'U', 60000) + .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-custom-contracts/2_Owner.sol"]', 'U', 60000) + .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-warning-contracts/1_Storage.sol"]', '2', 60000) + .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-warning-contracts/1_Storage.sol"]', '2', 60000) + .waitForElementContainsText('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-custom-contracts/3_Ballot.sol"]', 'customtext', 60000) + .waitForElementContainsText('//*[@class="mainview"]//*[@data-id="file-decoration-custom-contracts/3_Ballot.sol"]', 'customtext', 60000) .moveToElement('//*[@id="fileExplorerView"]//*[@data-id="file-decoration-error-contracts/2_Owner.sol"]', 0, 0) //.waitForElementVisible('//*[@id="error-tooltip-contracts/2_Owner.sol"]') - //.waitForElementContainsText('//*[@id="error-tooltip-contracts/2_Owner.sol"]', 'error on owner') + //.waitForElementContainsText('//*[@id="error-tooltip-contracts/2_Owner.sol"]', 'error on owner', 60000) }, 'clear ballot decorator': function (browser: NightwatchBrowser) { @@ -39,7 +39,7 @@ module.exports = { .pause(2000) .click('[data-id="compile-action"]') .pause(4000) - .waitForElementNotPresent('[data-id="file-decoration-custom-contracts/3_Ballot.sol"]', 10000) + .waitForElementNotPresent('[data-id="file-decoration-custom-contracts/3_Ballot.sol"]', 60000) }, 'clear all decorators': function (browser: NightwatchBrowser) { browser @@ -47,8 +47,8 @@ module.exports = { .pause(2000) .click('[data-id="compile-action"]') .pause(4000) - .waitForElementNotPresent('[data-id="file-decoration-error-contracts/2_Owner.sol"]', 10000) - .waitForElementNotPresent('[data-id="file-decoration-warning-contracts/1_Storage.sol"]', 10000) + .waitForElementNotPresent('[data-id="file-decoration-error-contracts/2_Owner.sol"]', 60000) + .waitForElementNotPresent('[data-id="file-decoration-warning-contracts/1_Storage.sol"]', 60000) } } diff --git a/apps/remix-ide-e2e/src/tests/file_explorer_context_menu.test.ts b/apps/remix-ide-e2e/src/tests/file_explorer_context_menu.test.ts index 17bb5d6aeb2..a9b5ce101b1 100644 --- a/apps/remix-ide-e2e/src/tests/file_explorer_context_menu.test.ts +++ b/apps/remix-ide-e2e/src/tests/file_explorer_context_menu.test.ts @@ -22,7 +22,7 @@ module.exports = { .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.CONTROL + 'v') .pause(1000) .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME1.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME1.txt"]', 60000) }, 'Should copy file name and paste in another folder with new file button and it will contain a new file #group1 ': function (browser: NightwatchBrowser) { browser @@ -37,7 +37,7 @@ module.exports = { .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.CONTROL + 'v') .pause(1000) .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/README.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/README.txt"]', 60000) }, 'Should copy file name and paste in another folder that has the same filename with new file button and it will contain a new file #group1 ': function (browser: NightwatchBrowser) { browser @@ -52,7 +52,7 @@ module.exports = { .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.CONTROL + 'v') .pause(1000) .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/README1.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/README1.txt"]', 60000) }, 'Should copy file name and paste in root with right click and it will contain a new file #group1 ': function (browser: NightwatchBrowser) { browser @@ -67,7 +67,7 @@ module.exports = { .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.CONTROL + 'v') .pause(1000) .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME2.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME2.txt"]', 60000) }, 'Should copy file name and paste in contracts with right click and it will contain a new file #group1 ': function (browser: NightwatchBrowser) { browser @@ -82,7 +82,7 @@ module.exports = { .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.CONTROL + 'v') .pause(1000) .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME2.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME2.txt"]', 60000) }, // file copy paste tests 'Should copy file and paste in root with right click and it will contain a new file #group1 ': function (browser: NightwatchBrowser) { @@ -94,7 +94,7 @@ module.exports = { .rightClick('*[data-id="treeViewUltreeViewMenu"]') .saveScreenshot('./reports/screenshot/file_explorer_context_menu.png') .click('*[data-id="contextMenuItempaste"]') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME1.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemREADME1.txt"]', 60000) }, 'Should copy file and paste in contracts with right click and it will contain a new file #group1 ': function (browser: NightwatchBrowser) { browser @@ -104,7 +104,7 @@ module.exports = { .click('[data-id="contextMenuItemcopy"]') .rightClick('*[data-id="treeViewLitreeViewItemcontracts"]') .click('*[data-id="contextMenuItempaste"]') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/README1.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/README1.txt"]', 60000) }, // folder copy paste tests 'Should copy folder and paste in root with right click and it will contain a copied folder #group1 ': function (browser: NightwatchBrowser) { @@ -114,7 +114,7 @@ module.exports = { .click('[data-id="contextMenuItemcopy"]') .rightClick('*[data-id="treeViewUltreeViewMenu"]') .click('*[data-id="contextMenuItempaste"]') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemCopy_contracts"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemCopy_contracts"]', 60000) }, 'Should copy folder and paste in contracts with right click and it will contain a copied folder #group1 ': function (browser: NightwatchBrowser) { browser @@ -125,6 +125,6 @@ module.exports = { .click('[data-id="contextMenuItemcopy"]') .rightClick('*[data-id="treeViewLitreeViewItemcontracts"]') .click('*[data-id="contextMenuItempaste"]') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/Copy_scripts"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/Copy_scripts"]', 60000) } } diff --git a/apps/remix-ide-e2e/src/tests/generalSettings.test.ts b/apps/remix-ide-e2e/src/tests/generalSettings.test.ts index cf2f06d337e..d63a7dc4e90 100644 --- a/apps/remix-ide-e2e/src/tests/generalSettings.test.ts +++ b/apps/remix-ide-e2e/src/tests/generalSettings.test.ts @@ -8,10 +8,10 @@ module.exports = { }, 'Should display settings menu ': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="topbar-settingsIcon"]') .click('*[data-id="topbar-settingsIcon"]') - .waitForElementContainsText('[data-id="settings-sidebar-header"] h2', 'Settings') + .waitForElementContainsText('[data-id="settings-sidebar-header"] h2', 'Settings', 60000) }, 'Should activate `generate contract metadata` ': function (browser) { @@ -42,7 +42,7 @@ module.exports = { .setValue('[data-id="settingsTabgist-access-token"]', '**********') .click('[data-id="settingsTabSavegithub-config"]') .pause(100) - .waitForElementVisible('*[data-shared="tooltipPopup"]', 5000) + .waitForElementVisible('*[data-shared="tooltipPopup"]', 60000) .assert.containsText('*[data-shared="tooltipPopup"]', 'Credentials updated') .pause(3000) }, @@ -51,7 +51,7 @@ module.exports = { browser .click('*[data-id="github-configSwitch"]') .pause(500) - .waitForElementVisible('*[data-shared="tooltipPopup"]', 5000) + .waitForElementVisible('*[data-shared="tooltipPopup"]', 60000) .assert.containsText('*[data-shared="tooltipPopup"]', 'Credentials removed') .waitForElementNotPresent('[data-id="settingsTabgist-access-token"]') .click('*[data-id="github-configSwitch"]') @@ -60,7 +60,7 @@ module.exports = { }, // These e2e should be enabled after settings panel refactoring // 'Should load dark theme ': function (browser: NightwatchBrowser) { - // browser.waitForElementVisible('*[data-id="verticalIconsKindsettings"]', 5000) + // browser.waitForElementVisible('*[data-id="verticalIconsKindsettings"]', 60000) // .scrollAndClick('*[data-id="settingsTabThemeLabelDark"]') // .pause(2000) // .checkElementStyle(':root', '--primary', remixIdeThemes.dark.primary) @@ -72,7 +72,7 @@ module.exports = { // }, // 'Should load light theme ': function (browser: NightwatchBrowser) { - // browser.waitForElementVisible('*[data-id="verticalIconsKindsettings"]', 5000) + // browser.waitForElementVisible('*[data-id="verticalIconsKindsettings"]', 60000) // .scrollAndClick('*[data-id="settingsTabThemeLabelLight"]') // .pause(2000) // .checkElementStyle(':root', '--primary', remixIdeThemes.light.primary) diff --git a/apps/remix-ide-e2e/src/tests/gist.test.ts b/apps/remix-ide-e2e/src/tests/gist.test.ts index 1477756bd16..3fc58e6083b 100644 --- a/apps/remix-ide-e2e/src/tests/gist.test.ts +++ b/apps/remix-ide-e2e/src/tests/gist.test.ts @@ -24,7 +24,7 @@ module.exports = { const gistid = '17ac9315bc065a3d95cf8dc1b28d71f8' browser .refreshPage() - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .click('li[data-id="treeViewLitreeViewItemREADME.txt"]') // focus on root directory .waitForElementVisible('*[data-id="fileExplorerNewFilecreateNewFolder"]') .click('[data-id="fileExplorerNewFilecreateNewFolder"]') @@ -70,7 +70,7 @@ module.exports = { 'Load Gist Modal #group1': '' + function (browser: NightwatchBrowser) { browser.clickLaunchIcon('home') - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('filePanel') .waitForElementVisible('*[data-id="verticalIconsHomeIcon"]') .click('*[data-id="verticalIconsHomeIcon"]') @@ -87,7 +87,7 @@ module.exports = { 'Display Error Message For Invalid Gist ID #group1': '' + function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('filePanel') .scrollAndClick('*[data-id="landingPageImportFromGistButton"]') .waitForElementVisible('*[data-id="gisthandlerModalDialogModalBody-react"] input[data-id="modalDialogCustomPromp"]') @@ -104,13 +104,13 @@ module.exports = { 'Display Error Message For Missing Gist Token When Publishing #group1': function (browser: NightwatchBrowser) { browser .pause(1000) - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="topbar-settingsIcon"]') .click('*[data-id="topbar-settingsIcon"]') .waitForElementVisible('*[data-id="settings-sidebar-services"]') .click('*[data-id="settings-sidebar-services"]') .click('*[data-id="github-configSwitch"]') - .waitForElementVisible('*[data-shared="tooltipPopup"]', 5000) + .waitForElementVisible('*[data-shared="tooltipPopup"]', 60000) .assert.containsText('*[data-shared="tooltipPopup"]', 'Credentials removed') .click('*[data-id="github-dropdown-toggle"]') .waitForElementNotPresent('*[data-id="github-dropdown-item-publish-to-gist"]') @@ -129,7 +129,7 @@ module.exports = { 'Import From Gist For Valid Gist ID #group2': '' + function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 15000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="topbar-settingsIcon"]') .click('*[data-id="topbar-settingsIcon"]') .click('*[data-id="settingsTabGenerateContractMetadataLabel"]') @@ -155,8 +155,8 @@ module.exports = { .url('http://127.0.0.1:8080/#gist=' + gistId) // loading the gist .refreshPage() .currentWorkspaceIs('gist ' + gistId) - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 15000) - .waitForElementVisible(`#fileExplorerView li[data-path='contracts']`, 30000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) + .waitForElementVisible(`#fileExplorerView li[data-path='contracts']`, 60000) .openFile(`contracts/2_Owner.sol`) .getEditorValue((content) => { browser.assert.ok(content.indexOf('contract Owner {') !== -1) @@ -165,7 +165,7 @@ module.exports = { .click('*[data-id="github-dropdown-toggle"]') .click('*[data-id="github-dropdown-item-publish-to-gist"]') .modalFooterOKClick('fileSystem') - .waitForElementVisible('*[data-shared="tooltipPopup"]', 5000) + .waitForElementVisible('*[data-shared="tooltipPopup"]', 60000) .assert.containsText('*[data-shared="tooltipPopup"]', 'Saving gist (' + gistId + ') ...') } } diff --git a/apps/remix-ide-e2e/src/tests/homeTab.test.ts b/apps/remix-ide-e2e/src/tests/homeTab.test.ts index e4a05c26d7e..4fae08a8a55 100644 --- a/apps/remix-ide-e2e/src/tests/homeTab.test.ts +++ b/apps/remix-ide-e2e/src/tests/homeTab.test.ts @@ -49,6 +49,6 @@ module.exports = { .waitForElementVisible('*[data-id$="fileExplorerTreeItemInput"]') .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', 'HometabNewFile.txt') .sendKeys('*[data-id$="fileExplorerTreeItemInput"]', browser.Keys.ENTER) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemHometabNewFile.txt"]', 7000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemHometabNewFile.txt"]', 60000) } } diff --git a/apps/remix-ide-e2e/src/tests/importFromGithub.test.ts b/apps/remix-ide-e2e/src/tests/importFromGithub.test.ts index d26dc1915ff..d3fd300809d 100644 --- a/apps/remix-ide-e2e/src/tests/importFromGithub.test.ts +++ b/apps/remix-ide-e2e/src/tests/importFromGithub.test.ts @@ -17,7 +17,7 @@ module.exports = { 'Import from GitHub Modal #group1': function (browser: NightwatchBrowser) { browser .clickLaunchIcon('filePanel') - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('filePanel') .waitForElementVisible('*[data-id="verticalIconsHomeIcon"]') .click('*[data-id="verticalIconsHomeIcon"]') @@ -42,12 +42,12 @@ module.exports = { .waitForElementVisible('*[data-id="topbarModalModalDialogModalFooter-react"]') .click('[data-id="topbarModal-modal-footer-ok-react"]') // submitted //.waitForElementVisible('*[data-shared="tooltipPopup"]') - //.waitForElementContainsText('*[data-shared="tooltipPopup"] span', 'not found ' + testData.invalidURL) + //.waitForElementContainsText('*[data-shared="tooltipPopup"] span', 'not found ' + testData.invalidURL, 60000) }, 'Clone From GitHub with Valid URL #group2': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('filePanel') .waitForElementVisible('*[data-id="verticalIconsHomeIcon"]') .click('*[data-id="verticalIconsHomeIcon"]') diff --git a/apps/remix-ide-e2e/src/tests/layout.test.ts b/apps/remix-ide-e2e/src/tests/layout.test.ts index fefcfeb3fd2..6c8bb079cca 100644 --- a/apps/remix-ide-e2e/src/tests/layout.test.ts +++ b/apps/remix-ide-e2e/src/tests/layout.test.ts @@ -51,14 +51,14 @@ module.exports = { .pause(5000) .waitForElementPresent('*[data-id="Deploy - transact (not payable)"]') .click('*[data-id="Deploy - transact (not payable)"]') - .waitForElementPresent('#instance0xd9145CCE52D386f254917e481eB44e9943F39138') + .waitForElementPresent('#instance0xd9145CCE52D386f254917e481eB44e9943F39138', 60000) .clickInstance(0) .clickFunction('store - transact (not payable)', { types: 'uint256 num', values: '10' }) .clickFunction('retrieve - call') .click('[data-id="movePluginToLeft"]') .waitForElementVisible('[data-id="movePluginToRight"]') .clickInstance(0) - .waitForElementContainsText('[data-id="treeViewLi0"]', 'uint256: 10') + .waitForElementContainsText('[data-id="treeViewLi0"]', 'uint256: 10', 60000) }, 'Should maintain logged state of search plugin after pinning and unpinning': function (browser: NightwatchBrowser) { browser.clickLaunchIcon('search') @@ -71,9 +71,9 @@ module.exports = { .waitForElementContainsText('*[data-id="search_results"]', 'contracts', 60000) .waitForElementContainsText('*[data-id="search_results"]', 'README.TXT', 60000) .click('[data-id="movePluginToRight"]') - .waitForElementContainsText('*[data-id="search_results"]', '3_BALLOT.SOL') - .waitForElementContainsText('*[data-id="search_results"]', 'contracts') - .waitForElementContainsText('*[data-id="search_results"]', 'README.TXT') + .waitForElementContainsText('*[data-id="search_results"]', '3_BALLOT.SOL', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'contracts', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'README.TXT', 60000) } } diff --git a/apps/remix-ide-e2e/src/tests/matomo.test.ts b/apps/remix-ide-e2e/src/tests/matomo.test.ts index 10d8cd53e61..4d2c5f71e20 100644 --- a/apps/remix-ide-e2e/src/tests/matomo.test.ts +++ b/apps/remix-ide-e2e/src/tests/matomo.test.ts @@ -42,7 +42,7 @@ module.exports = { console.log('_paq', res) }) .waitForElementNotVisible('*[data-id="matomoModalModalDialogModalBody-react"]') - .waitForElementVisible('*[data-id="beginnerbtn"]', 10000) + .waitForElementVisible('*[data-id="beginnerbtn"]', 60000) .pause(1000) .click('[data-id="beginnerbtn"]') .waitForElementNotPresent('*[data-id="beginnerbtn"]') @@ -102,7 +102,7 @@ module.exports = { .click('*[data-id="matomoPerfAnalyticsToggleSwitch"]') // disable matomo perf analytics3 .click('[data-id="managePreferencesModal-modal-footer-ok-react"]') // click on Save Preferences .pause(2000) - .waitForElementPresent('*[data-id="beginnerbtn"]', 10000) + .waitForElementPresent('*[data-id="beginnerbtn"]', 60000) .click('[data-id="beginnerbtn"]') .waitForElementVisible({ selector: `//*[contains(text(), 'Welcome to Remix IDE')]`, @@ -367,7 +367,7 @@ module.exports = { }, 'Deploy Ballot #group4': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('solidity') .waitForElementVisible('*[data-id="compilerContainerCompileBtn"]') .click('*[data-id="compilerContainerCompileBtn"]') diff --git a/apps/remix-ide-e2e/src/tests/metamask.test.ts b/apps/remix-ide-e2e/src/tests/metamask.test.ts index 12d332ede49..7cf376bbc07 100644 --- a/apps/remix-ide-e2e/src/tests/metamask.test.ts +++ b/apps/remix-ide-e2e/src/tests/metamask.test.ts @@ -46,7 +46,7 @@ const tests = { .useCss() .switchBrowserTab(0) .refreshPage() - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('udapp') .waitForElementPresent('*[data-id="settingsNetworkEnv"]') .switchEnvironment('injected-MetaMask') @@ -70,11 +70,11 @@ const tests = { .clickLaunchIcon('filePanel') .addFile('Greet.sol', sources[0]['Greet.sol']) .clickLaunchIcon('udapp') - .waitForElementVisible('*[data-id="Deploy - transact (not payable)"]', 45000) // wait for the contract to compile + .waitForElementVisible('*[data-id="Deploy - transact (not payable)"]', 60000) // wait for the contract to compile }, 'Should deploy contract on Sepolia Test Network using MetaMask': function (browser: NightwatchBrowser) { - browser.clearConsole().waitForElementPresent('*[data-id="runTabSelectAccount"]', 45000) + browser.clearConsole().waitForElementPresent('*[data-id="runTabSelectAccount"]', 60000) .clickLaunchIcon('filePanel') .openFile('Greet.sol') .clickLaunchIcon('udapp') @@ -144,7 +144,7 @@ const tests = { }) }, 'Should deploy contract on Sepolia Test Network using MetaMask again': function (browser: NightwatchBrowser) { - browser.clearConsole().waitForElementPresent('*[data-id="runTabSelectAccount"]', 45000) + browser.clearConsole().waitForElementPresent('*[data-id="runTabSelectAccount"]', 60000) .clickLaunchIcon('filePanel') .openFile('Greet.sol') .clickLaunchIcon('udapp') @@ -213,7 +213,7 @@ const tests = { }, 'Should debug Sepolia transaction with source highlighting MetaMask': function (browser: NightwatchBrowser) { let txhash - browser.waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('pluginManager') // load debugger and source verification .clickLaunchIcon('udapp') .perform((done) => { @@ -225,13 +225,13 @@ const tests = { .pause(5000) .perform((done) => { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('debugger') .waitForElementVisible('*[data-id="debuggerTransactionInput"]') .setValue('*[data-id="debuggerTransactionInput"]', txhash) // debug tx .pause(2000) .click('*[data-id="debuggerTransactionStartButton"]') - .waitForElementVisible('*[data-id="treeViewDivto"]', 30000) + .waitForElementVisible('*[data-id="treeViewDivto"]', 60000) .checkVariableDebug('soliditylocals', localsCheck) .perform(() => done()) }) @@ -249,7 +249,7 @@ const tests = { .clickLaunchIcon('udapp') .waitForElementPresent('i[id="remixRunSignMsg"]') .click('i[id="remixRunSignMsg"]') - .waitForElementVisible('*[data-id="signMessageTextarea"]', 120000) + .waitForElementVisible('*[data-id="signMessageTextarea"]', 60000) .click('*[data-id="sign-eip-712"]') .waitForElementVisible('*[data-id="udappNotify-modal-footer-ok-react"]') .modalFooterOKClick('udappNotify') @@ -280,7 +280,7 @@ const tests = { }); }) .refreshPage() - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('udapp') .switchEnvironment('injected-MetaMask') .waitForElementPresent('*[data-id="settingsNetworkEnv"]') @@ -296,7 +296,7 @@ const tests = { .clickLaunchIcon('udapp') .waitForElementPresent('*[data-id="Deploy - transact (not payable)"]') .click('*[data-id="Deploy - transact (not payable)"]') - .waitForElementVisible('*[data-id="udappNotifyModalDialogModalBody-react"]', 65000) + .waitForElementVisible('*[data-id="udappNotifyModalDialogModalBody-react"]', 60000) .modalFooterOKClick('udappNotify') .pause(10000) .assert.containsText('*[data-id="udappNotifyModalDialogModalBody-react"]', 'You are about to create a transaction on Main Network. Confirm the details to send the info to your provider.') diff --git a/apps/remix-ide-e2e/src/tests/migrateFileSystem.test.ts b/apps/remix-ide-e2e/src/tests/migrateFileSystem.test.ts index ccf18cc3c72..5b254ea0b1b 100644 --- a/apps/remix-ide-e2e/src/tests/migrateFileSystem.test.ts +++ b/apps/remix-ide-e2e/src/tests/migrateFileSystem.test.ts @@ -9,10 +9,10 @@ const tests = { .pause(6000) .switchBrowserTab(0) .maximizeWindow() - .waitForElementVisible('*[data-id="skipbackup-btn"]', 5000) + .waitForElementVisible('*[data-id="skipbackup-btn"]', 60000) .click('*[data-id="skipbackup-btn"]') .pause(5000) - .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .hideToolTips() }, 'Should load the testmigration url and refresh and still have test data #group7': function (browser: NightwatchBrowser) { @@ -20,10 +20,10 @@ const tests = { .pause(6000) .switchBrowserTab(0) .maximizeWindow() - .waitForElementVisible('*[data-id="skipbackup-btn"]', 5000) + .waitForElementVisible('*[data-id="skipbackup-btn"]', 60000) .click('*[data-id="skipbackup-btn"]') .pause(5000) - .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .hideToolTips() .refreshPage() }, @@ -37,17 +37,17 @@ const tests = { .switchBrowserTab(0) .maximizeWindow() .pause(5000) - .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .hideToolTips() .waitForElementVisible('div[data-id="filePanelFileExplorerTree"]') .openFile('README.txt') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('Output from script will appear in remix terminal.')) }) .click('*[data-id="treeViewLitreeViewItemcontracts"]') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('function retrieve() public view returns (uint256){')) }) @@ -57,10 +57,10 @@ const tests = { .pause(6000) .switchBrowserTab(0) .maximizeWindow() - .waitForElementVisible('*[data-id="skipbackup-btn"]', 5000) + .waitForElementVisible('*[data-id="skipbackup-btn"]', 60000) .click('*[data-id="skipbackup-btn"]') .pause(5000) - .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .hideToolTips() }, 'Should generate error in migration by deleting indexedDB and falling back to local storage with test #group5': function (browser: NightwatchBrowser) { @@ -68,10 +68,10 @@ const tests = { .pause(6000) .switchBrowserTab(0) .maximizeWindow().execute(('delete window.indexedDB')) - .waitForElementVisible('*[data-id="skipbackup-btn"]', 5000) + .waitForElementVisible('*[data-id="skipbackup-btn"]', 60000) .click('*[data-id="skipbackup-btn"]') .pause(5000) - .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .hideToolTips() }, 'should have localstorage storage in terminal #group2 #group3 #group5': function (browser: NightwatchBrowser) { @@ -79,22 +79,22 @@ const tests = { }, 'Should have README file with TEST README as content #group1 #group3': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 5000) + .waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .waitForElementVisible('div[data-id="filePanelFileExplorerTree"]') .openFile('TEST_README.txt') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.equal(content, 'TEST README') }) }, // these are test data entries 'Should have a workspace_test #group1 #group3 #group5 #group7': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 5000) + browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .switchWorkspace('workspace_test') .waitForElementVisible('*[data-id="treeViewLitreeViewItemtest_contracts"]') }, 'Should have a sol file with test data #group1 #group3 #group5 #group7': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 5000) + browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .click('*[data-id="treeViewLitreeViewItemtest_contracts"]') .openFile('test_contracts/1_Storage.sol') .getEditorValue((content) => { @@ -102,17 +102,17 @@ const tests = { }) }, 'Should have an artifacts file with JSON test data #group1 #group3 #group5 #group7': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 5000) + browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .click('*[data-id="treeViewLitreeViewItemartifacts"]') .openFile('artifacts/Storage_metadata.json') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { const metadata = JSON.parse(content) browser.assert.equal(metadata.test, 'data') }) }, 'Should have an empty workspace #group1 #group3 #group5 #group7': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 5000) + browser.waitForElementVisible('*[data-id="remixIdeSidePanel"]', 60000) .switchWorkspace('emptyspace') }, // end of test data entries @@ -130,7 +130,7 @@ const tests = { .pause(6000) .switchBrowserTab(0) .maximizeWindow().execute('delete window.localStorage') - .waitForElementVisible('*[data-id="skipbackup-btn"]', 5000) + .waitForElementVisible('*[data-id="skipbackup-btn"]', 60000) .click('*[data-id="skipbackup-btn"]') .hideToolTips() .assert.containsText('.alert-danger', 'An unknown error') diff --git a/apps/remix-ide-e2e/src/tests/pluginManager.test.ts b/apps/remix-ide-e2e/src/tests/pluginManager.test.ts index c77cca63cdd..277f34e8700 100644 --- a/apps/remix-ide-e2e/src/tests/pluginManager.test.ts +++ b/apps/remix-ide-e2e/src/tests/pluginManager.test.ts @@ -11,11 +11,11 @@ module.exports = { 'Should load Plugin Manager and search for a plugin #group1': function (browser: NightwatchBrowser) { browser .clickLaunchIcon('pluginManager') - .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 10000) + .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 60000) .assert.visible('[data-id="pluginManagerComponentPluginManager"]', 'Plugin Manager component is visible.') .waitForElementVisible('[data-id="pluginManagerComponentSearchInput"]') .setValue('[data-id="pluginManagerComponentSearchInput"]', 'debugger') - .waitForElementVisible('[data-id="pluginManagerComponentActiveTile"]', 5000) + .waitForElementVisible('[data-id="pluginManagerComponentActiveTile"]', 60000) .assert.containsText('[data-id="pluginManagerComponentActiveTile"]', 'Debugger') .clearValue('[data-id="pluginManagerComponentSearchInput"]') }, @@ -24,13 +24,13 @@ module.exports = { let initialActiveCount browser - .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 10000) + .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 60000) .click('[data-id="pluginManagerActiveTab"]') .getText('[data-id="pluginManagerComponentActiveTilesCount"]', (r) => { initialActiveCount = parseInt(r.value as any) }) .click('[data-id="pluginManagerInactiveTab"]') - .waitForElementVisible('[data-id^="pluginManagerComponentActivateButton"]', 10000) + .waitForElementVisible('[data-id^="pluginManagerComponentActivateButton"]', 60000) .click('css selector', '[data-id^="pluginManagerComponentActivateButton"]') .pause(1200) .click('[data-id="pluginManagerActiveTab"]') @@ -38,7 +38,7 @@ module.exports = { const newActiveCount = parseInt(r.value as any) browser.assert.equal(newActiveCount, initialActiveCount + 1, `Active count should increase to ${initialActiveCount + 1}.`) }) - .waitForElementVisible('[data-id^="pluginManagerComponentDeactivateButton"]', 10000) + .waitForElementVisible('[data-id^="pluginManagerComponentDeactivateButton"]', 60000) .click('css selector', '[data-id^="pluginManagerComponentDeactivateButton"]') .pause(1200) .getText('[data-id="pluginManagerComponentActiveTilesCount"]', (r) => { @@ -52,7 +52,7 @@ module.exports = { let filteredCount: number browser - .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 10000) + .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 60000) .click('[data-id="pluginManagerAllTab"]') .getText('[data-id="pluginManagerAllCount"]', (result) => { initialAllCount = parseInt(result.value as string) @@ -75,7 +75,7 @@ module.exports = { let initialAllCount: number browser - .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 10000) + .waitForElementVisible('[data-id="pluginManagerComponentPluginManager"]', 60000) .click('[data-id="pluginManagerAllTab"]') .getText('[data-id="pluginManagerAllCount"]', (result) => { initialAllCount = parseInt(result.value as string) diff --git a/apps/remix-ide-e2e/src/tests/plugin_api.ts b/apps/remix-ide-e2e/src/tests/plugin_api.ts index d757da4368f..f48cd3d582c 100644 --- a/apps/remix-ide-e2e/src/tests/plugin_api.ts +++ b/apps/remix-ide-e2e/src/tests/plugin_api.ts @@ -427,7 +427,7 @@ module.exports = { .clickLaunchIcon('filePanel') .executeScriptInTerminal('remix.execute(\'test_modal.js\')') .useCss() - .waitForElementVisible('*[data-id="test_id_1_ModalDialogModalBody-react"]', 65000) + .waitForElementVisible('*[data-id="test_id_1_ModalDialogModalBody-react"]', 60000) .assert.containsText('*[data-id="test_id_1_ModalDialogModalBody-react"]', 'message 1') .modalFooterOKClick('test_id_1_') // check the script runner notifications @@ -438,8 +438,8 @@ module.exports = { .modalFooterOKClick('test_id_3_') .journalLastChildIncludes('default value... ') // check the return value of the prompt .waitForElementVisible('*[data-shared="tooltipPopup"]') - .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'I am a toast') - .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'I am a re-toast') + .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'I am a toast', 60000) + .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'I am a re-toast', 60000) }, 'Should open 2 alerts from localplugin #group9': !function (browser: NightwatchBrowser) { diff --git a/apps/remix-ide-e2e/src/tests/providers.test.ts b/apps/remix-ide-e2e/src/tests/providers.test.ts index 2ce2b80f7af..8e35f6ccefd 100644 --- a/apps/remix-ide-e2e/src/tests/providers.test.ts +++ b/apps/remix-ide-e2e/src/tests/providers.test.ts @@ -9,7 +9,7 @@ module.exports = { }, 'Should switch to ganache provider, set a custom URL and fail to connect #group1': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('udapp') .switchEnvironment('ganache-provider') .waitForElementVisible('*[data-id="ganache-providerModalDialogModalBody-react"]') @@ -22,9 +22,7 @@ module.exports = { .modalFooterOKClick('ganache-provider') .waitForElementVisible({ locateStrategy: 'xpath', - selector: "//span[@class='text-danger' and contains(., 'Error while querying the provider')]", - timeout: 10000 - }) + selector: "//span[@class='text-danger' and contains(., 'Error while querying the provider')]", timeout: 60000 }) }, 'Should switch to ganache provider, use the default ganache URL and succeed to connect #group1': function (browser: NightwatchBrowser) { @@ -34,13 +32,13 @@ module.exports = { .switchEnvironment('ganache-provider') .waitForElementVisible('*[data-id="ganache-providerModalDialogModalBody-react"]') .modalFooterOKClick('ganache-provider') - .waitForElementContainsText('*[data-id="settingsNetworkEnv"]', 'Custom (') - .waitForElementVisible({ selector: `[data-id="selected-provider-ganache-provider"]`, timeout: 5000 }) + .waitForElementContainsText('*[data-id="settingsNetworkEnv"]', 'Custom (', 60000) + .waitForElementVisible({ selector: `[data-id="selected-provider-ganache-provider"]`, timeout: 60000 }) }, 'Should switch to foundry provider, set a custom URL and fail to connect #group1': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 60000) .switchEnvironment('foundry-provider') .waitForElementVisible('*[data-id="foundry-providerModalDialogModalBody-react"]') .execute(() => { @@ -56,11 +54,11 @@ module.exports = { browser.switchEnvironment('foundry-provider') .waitForElementVisible('*[data-id="foundry-providerModalDialogModalBody-react"]') .modalFooterOKClick('foundry-provider') - .waitForElementContainsText('*[data-id="settingsNetworkEnv"]', 'Custom (') + .waitForElementContainsText('*[data-id="settingsNetworkEnv"]', 'Custom (', 60000) }, 'Should switch to custom provider #group2': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('udapp') .switchEnvironment('ganache-provider') .waitForElementVisible('*[data-id="ganache-providerModalDialogModalBody-react"]') @@ -72,7 +70,7 @@ module.exports = { .setValue('*[data-id="ganache-providerModalDialogModalBody-react"] input', 'https://scroll-rpc.publicnode.com') .modalFooterOKClick('ganache-provider') .pause(1000) - .waitForElementPresent({ selector: `[data-id="selected-provider-ganache-provider"]`, timeout: 5000 }) + .waitForElementPresent({ selector: `[data-id="selected-provider-ganache-provider"]`, timeout: 60000 }) .pause(1000) }, @@ -87,7 +85,7 @@ module.exports = { locateStrategy: 'xpath', selector: "//span[@class='text-danger' and contains(., 'exceed maximum block range')]" }) - .waitForElementPresent({ selector: `[data-id="selected-provider-ganache-provider"]`, timeout: 5000 }) + .waitForElementPresent({ selector: `[data-id="selected-provider-ganache-provider"]`, timeout: 60000 }) } } diff --git a/apps/remix-ide-e2e/src/tests/proxy_oz_v4.test.ts b/apps/remix-ide-e2e/src/tests/proxy_oz_v4.test.ts index 85db4793b37..e1d71e7a2c1 100644 --- a/apps/remix-ide-e2e/src/tests/proxy_oz_v4.test.ts +++ b/apps/remix-ide-e2e/src/tests/proxy_oz_v4.test.ts @@ -72,7 +72,7 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 < 5.0.0 as proxy...', 60000) }, @@ -123,7 +123,7 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 < 5.0.0 as proxy...', 60000) }, @@ -172,7 +172,7 @@ module.exports = { .waitForElementVisible('[data-id="udappNotify-modal-footer-ok-react"]') .click('[data-id="udappNotify-modal-footer-ok-react"]') .waitForElementContainsText('[data-id="confirmProxyDeploymentModalDialogModalTitle-react"]', 'Confirm Update Proxy (ERC1967)') - .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') + .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]', 60000) .click( { selector: '[data-id="confirmProxyDeployment-modal-footer-ok-react"]', @@ -217,7 +217,7 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 < 5.0.0 for the proxy upgrade..', 60000) }, diff --git a/apps/remix-ide-e2e/src/tests/proxy_oz_v5.test.ts b/apps/remix-ide-e2e/src/tests/proxy_oz_v5.test.ts index 99b9c0dc974..ec285bf9bb8 100644 --- a/apps/remix-ide-e2e/src/tests/proxy_oz_v5.test.ts +++ b/apps/remix-ide-e2e/src/tests/proxy_oz_v5.test.ts @@ -69,8 +69,8 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...', 60000) }, 'Should interact with deployed contract via ERC1967 (proxy) #group1': function (browser: NightwatchBrowser) { @@ -121,8 +121,8 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...', 60000) }, 'Should interact with initialized contract to verify parameters #group1': function (browser: NightwatchBrowser) { @@ -171,14 +171,14 @@ module.exports = { .waitForElementVisible('[data-id="udappNotify-modal-footer-ok-react"]') .click('[data-id="udappNotify-modal-footer-ok-react"]') .waitForElementContainsText('[data-id="confirmProxyDeploymentModalDialogModalTitle-react"]', 'Confirm Update Proxy (ERC1967)') - .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') + .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]', 60000) .click( { selector: '[data-id="confirmProxyDeployment-modal-footer-ok-react"]', }) .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...') + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...', 60000) }, 'Should interact with upgraded function in contract MyTokenV2 #group1': function (browser: NightwatchBrowser) { @@ -216,8 +216,8 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...', 60000) }, 'Should interact with upgraded contract through provided proxy address #group1': function (browser: NightwatchBrowser) { diff --git a/apps/remix-ide-e2e/src/tests/proxy_oz_v5_non_shanghai_runtime.test.ts b/apps/remix-ide-e2e/src/tests/proxy_oz_v5_non_shanghai_runtime.test.ts index 0fcfe6931bc..f46005feb7c 100644 --- a/apps/remix-ide-e2e/src/tests/proxy_oz_v5_non_shanghai_runtime.test.ts +++ b/apps/remix-ide-e2e/src/tests/proxy_oz_v5_non_shanghai_runtime.test.ts @@ -74,8 +74,8 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...', 60000) }, 'Should interact with deployed contract via ERC1967 (proxy) #group1': function (browser: NightwatchBrowser) { @@ -126,8 +126,8 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Deploying ERC1967 >= 5.0.0 as proxy...', 60000) }, 'Should interact with initialized contract to verify parameters #group1': function (browser: NightwatchBrowser) { @@ -176,14 +176,14 @@ module.exports = { .waitForElementVisible('[data-id="udappNotify-modal-footer-ok-react"]') .click('[data-id="udappNotify-modal-footer-ok-react"]') .waitForElementContainsText('[data-id="confirmProxyDeploymentModalDialogModalTitle-react"]', 'Confirm Update Proxy (ERC1967)') - .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') + .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]', 60000) .click( { selector: '[data-id="confirmProxyDeployment-modal-footer-ok-react"]', }) .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...') + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...', 60000) }, 'Should interact with upgraded function in contract MyTokenV2 #group1': function (browser: NightwatchBrowser) { @@ -221,8 +221,8 @@ module.exports = { .waitForElementVisible('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .click('[data-id="confirmProxyDeployment-modal-footer-ok-react"]') .waitForElementPresent('[data-id="universalDappUiTitleExpander0"]') - .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...') + .waitForElementPresent('[data-id="universalDappUiTitleExpander1"]', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Using ERC1967 >= 5.0.0 for the proxy upgrade...', 60000) }, 'Should interact with upgraded contract through provided proxy address #group1': function (browser: NightwatchBrowser) { diff --git a/apps/remix-ide-e2e/src/tests/publishContract.test.ts b/apps/remix-ide-e2e/src/tests/publishContract.test.ts index 3bd0d3576d7..527e043907d 100644 --- a/apps/remix-ide-e2e/src/tests/publishContract.test.ts +++ b/apps/remix-ide-e2e/src/tests/publishContract.test.ts @@ -14,7 +14,7 @@ module.exports = { 'Publish on IPFS': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#icon-panel', 10000) + .waitForElementVisible('#icon-panel', 60000) .clickLaunchIcon('filePanel') .click('[data-id="treeViewLitreeViewItemcontracts"]') .openFile('contracts/3_Ballot.sol') @@ -58,7 +58,7 @@ module.exports = { 'Should publish contract metadata to ipfs on deploy': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#icon-panel') + .waitForElementVisible('#icon-panel', 60000) .clickLaunchIcon('filePanel') .openFile('contracts/1_Storage.sol') .clickLaunchIcon('udapp') diff --git a/apps/remix-ide-e2e/src/tests/quickDapp_metamask.test.ts b/apps/remix-ide-e2e/src/tests/quickDapp_metamask.test.ts index 515c0ed70ad..cb945a80839 100644 --- a/apps/remix-ide-e2e/src/tests/quickDapp_metamask.test.ts +++ b/apps/remix-ide-e2e/src/tests/quickDapp_metamask.test.ts @@ -36,7 +36,7 @@ const tests = { .setupMetamask(passphrase, password) .useCss().switchBrowserTab(0) .refreshPage() - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('udapp') .switchEnvironment('injected-MetaMask') @@ -105,12 +105,12 @@ const tests = { .click('*[data-id="selectThemesOptions"]') .click('*[data-id="dropdown-item-Light"]') .click('*[data-id="deployDapp"]') - .waitForElementVisible('*[data-id="deployResult"]', 20000) + .waitForElementVisible('*[data-id="deployResult"]', 60000) .perform((done) => { browser.getAttribute('*[data-id="deployResult"]', 'class', function (result) { // @ts-expect-error if (result.value.includes('alert-danger')) { - browser.click('*[data-id="deployDapp"]').waitForElementVisible('*[data-id="deployResult"]', 20000).perform(() => done()) + browser.click('*[data-id="deployDapp"]').waitForElementVisible('*[data-id="deployResult"]', 60000).perform(() => done()) } else { done() } @@ -163,7 +163,7 @@ const tests = { .waitForElementVisible('.Toastify__toast--success', 60000) .assert.containsText('.Toastify__toast--success', 'success') .click('*[data-id="retrieve - call"]') - .waitForElementVisible('*[data-id="treeViewDiv0"]', 20000) + .waitForElementVisible('*[data-id="treeViewDiv0"]', 60000) .assert.containsText('*[data-id="treeViewDiv0"]', 'uint256: 11') .perform((done) => { axios.get(`https://${surgeSubdomain}.surge.sh/assets/logo.png?t=${new Date().getTime()}`, { responseType: 'arraybuffer' }).then((resp) => { @@ -224,7 +224,7 @@ const tests = { })) .pause(500) .click('*[data-id="teardownDapp"]') - .waitForElementVisible('*[data-id="teardownResult"]', 30000) + .waitForElementVisible('*[data-id="teardownResult"]', 60000) .assert.containsText('*[data-id="teardownResult"]', 'Teardown successfully!') } } diff --git a/apps/remix-ide-e2e/src/tests/remixd.test.ts b/apps/remix-ide-e2e/src/tests/remixd.test.ts index da2a9fb26d3..52797ee1b3d 100644 --- a/apps/remix-ide-e2e/src/tests/remixd.test.ts +++ b/apps/remix-ide-e2e/src/tests/remixd.test.ts @@ -330,17 +330,13 @@ module.exports = { .clickLaunchIcon('solidityStaticAnalysis') .useXpath() .click('//*[@id="staticAnalysisRunBtn"]') - .waitForElementPresent('//*[@id="staticanalysisresult"]', 5000) + .waitForElementPresent('//*[@id="staticanalysisresult"]', 60000) .waitForElementVisible({ selector: "//*[@data-id='nolibslitherwarnings'][contains(text(), '3')]", - locateStrategy: 'xpath', - timeout: 5000 - }) + locateStrategy: 'xpath', timeout: 60000 }) .waitForElementVisible({ selector: "//div[@data-id='block']/span[contains(text(), '3 warnings found.')]", - locateStrategy: 'xpath', - timeout: 5000 - }) + locateStrategy: 'xpath', timeout: 60000 }) } } @@ -385,11 +381,11 @@ function runTests(browser: NightwatchBrowser, done: any) { function testImportFromRemixd(browser: NightwatchBrowser, callback: VoidFunction) { browser - .waitForElementVisible('[data-path="src"]', 100000) + .waitForElementVisible('[data-path="src"]', 60000) .click('[data-path="src"]') - .waitForElementVisible('[data-path="src/gmbh"]', 100000) + .waitForElementVisible('[data-path="src/gmbh"]', 60000) .click('[data-path="src/gmbh"]') - .waitForElementVisible('[data-path="src/gmbh/company.sol"]', 100000) + .waitForElementVisible('[data-path="src/gmbh/company.sol"]', 60000) .click('[data-path="src/gmbh/company.sol"]') .pause(1000) .verifyContracts(['Assets', 'gmbh']) @@ -449,11 +445,11 @@ function connectRemixd(browser: NightwatchBrowser, done: any) { browser .pause(5000) - .waitForElementVisible('#icon-panel', 2000) + .waitForElementVisible('#icon-panel', 60000) .clickLaunchIcon('filePanel') .clickLaunchIcon('pluginManager') .scrollAndClick('#pluginManager *[data-id="pluginManagerComponentActivateButtonremixd"]') - .waitForElementVisible('*[data-id="remixdConnect-modal-footer-ok-react"]', 2000) + .waitForElementVisible('*[data-id="remixdConnect-modal-footer-ok-react"]', 60000) .pause(2000) .click('*[data-id="remixdConnect-modal-footer-ok-react"]') .pause(5000) diff --git a/apps/remix-ide-e2e/src/tests/runAndDeploy.test.ts b/apps/remix-ide-e2e/src/tests/runAndDeploy.test.ts index 84878d5a734..200eac7670e 100644 --- a/apps/remix-ide-e2e/src/tests/runAndDeploy.test.ts +++ b/apps/remix-ide-e2e/src/tests/runAndDeploy.test.ts @@ -30,9 +30,9 @@ module.exports = { 'Should sign message using account key #group2': function (browser: NightwatchBrowser) { browser.waitForElementVisible('*[data-id="settingsRemixRunSignMsg"]') - .waitForElementVisible('*[data-id="settingsRemixRunSignMsg"]', 30000) + .waitForElementVisible('*[data-id="settingsRemixRunSignMsg"]', 60000) .click('*[data-id="settingsRemixRunSignMsg"]') - .waitForElementVisible('*[data-id="signMessageTextarea"]', 120000) + .waitForElementVisible('*[data-id="signMessageTextarea"]', 60000) .click('*[data-id="signMessageTextarea"]') .setValue('*[data-id="signMessageTextarea"]', 'Remix is cool!') .assert.not.elementPresent('*[data-id="settingsRemixRunSignMsgHash"]') @@ -40,7 +40,7 @@ module.exports = { .pause(2000) .waitForElementPresent('[data-id="udappNotify-modal-footer-ok-react"]') .click('[data-id="udappNotify-modal-footer-ok-react"]') - .waitForElementVisible('*[data-id="udappNotifyModalDialogModalBody-react"]', 12000) + .waitForElementVisible('*[data-id="udappNotifyModalDialogModalBody-react"]', 60000) .assert.elementPresent('*[data-id="settingsRemixRunSignMsgHash"]') .assert.elementPresent('*[data-id="settingsRemixRunSignMsgSignature"]') .waitForElementPresent('[data-id="udappNotify-modal-footer-ok-react"]') @@ -53,7 +53,7 @@ module.exports = { .addFile('Greet.sol', sources[0]['Greet.sol']) .clickLaunchIcon('udapp') .selectAccount('0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c') - .waitForElementVisible('*[data-id="Deploy - transact (not payable)"]', 45000) + .waitForElementVisible('*[data-id="Deploy - transact (not payable)"]', 60000) .click('*[data-id="Deploy - transact (not payable)"]') .pause(5000) .testFunction('last', { @@ -68,7 +68,7 @@ module.exports = { .addFile('checkBalance.sol', sources[0]['checkBalance.sol']) .clickLaunchIcon('udapp') .setValue('*[data-id="dandrValue"]', '111') - .waitForElementVisible('*[data-id="Deploy - transact (payable)"]', 45000) + .waitForElementVisible('*[data-id="Deploy - transact (payable)"]', 60000) .click('*[data-id="Deploy - transact (payable)"]') .pause(1000) .clickInstance(1) @@ -129,7 +129,7 @@ module.exports = { .clickLaunchIcon('udapp') .waitForElementPresent('*[data-id="Deploy - transact (not payable)"]') .click('*[data-id="Deploy - transact (not payable)"]') - .waitForElementPresent('#instance0xd9145CCE52D386f254917e481eB44e9943F39138') + .waitForElementPresent('#instance0xd9145CCE52D386f254917e481eB44e9943F39138', 60000) .clickInstance(0) .clickFunction('store - transact (not payable)', { types: 'uint256 num', values: '10' }) .clickFunction('retrieve - call') @@ -150,7 +150,7 @@ module.exports = { .addAtAddressInstance('0xd9145CCE52D386f254917e481eB44e9943F39138', true, true, false) .clickInstance(0) .clickFunction('retrieve - call') - .waitForElementContainsText('[data-id="treeViewLi0"]', 'uint256: 10') + .waitForElementContainsText('[data-id="treeViewLi0"]', 'uint256: 10', 60000) }, 'Should save state after running web3 script #group4': function (browser: NightwatchBrowser) { diff --git a/apps/remix-ide-e2e/src/tests/script-runner.test.ts b/apps/remix-ide-e2e/src/tests/script-runner.test.ts index d89a3c50563..beab8940db2 100644 --- a/apps/remix-ide-e2e/src/tests/script-runner.test.ts +++ b/apps/remix-ide-e2e/src/tests/script-runner.test.ts @@ -7,7 +7,7 @@ const tests = { before: function (browser: NightwatchBrowser, done: VoidFunction) { init(browser, done, 'http://127.0.0.1:8080', false) }, - 'Should activate plugins': function (browser: NightwatchBrowser) { + 'Should activate plugins #group1': function (browser: NightwatchBrowser) { browser .waitForElementVisible('*[data-id="remixIdeSidePanel"]') .waitForElementVisible('*[plugin="pluginManager"]') @@ -16,7 +16,7 @@ const tests = { .click('*[data-id="pluginManagerComponentPluginManager"]') .scrollAndClick('*[data-id="pluginManagerComponentActivateButtonUIScriptRunner"]') }, - 'Should load default script runner': function (browser: NightwatchBrowser) { + 'Should load default script runner #group1': function (browser: NightwatchBrowser) { browser .waitForElementVisible('*[data-id="verticalIconsKindfilePanel"]') .click('*[data-id="verticalIconsKindfilePanel"]') @@ -33,13 +33,13 @@ const tests = { .waitForElementVisible('[data-id="dependency-ethers-^5"]') .waitForElementVisible('[data-id="sr-notloaded-ethers6"]') }, - 'Should load script runner ethers6': function (browser: NightwatchBrowser) { + 'Should load script runner ethers6 #group1': function (browser: NightwatchBrowser) { browser .click('[data-id="sr-notloaded-ethers6"]') - .waitForElementVisible('label[data-id="sr-loaded-ethers6"]', 100000) - .waitForElementPresent('[data-id="dependency-ethers-^6"]', 2000) + .waitForElementVisible('label[data-id="sr-loaded-ethers6"]', 120000) + .waitForElementPresent('[data-id="dependency-ethers-^6"]', 60000) }, - 'Should have config file in .remix/script.config.json': function (browser: NightwatchBrowser) { + 'Should have config file in .remix/script.config.json #group1': function (browser: NightwatchBrowser) { browser .frameParent() // .clickLaunchIcon('filePanel') @@ -47,7 +47,7 @@ const tests = { .waitForElementVisible('[data-id="treeViewDivDraggableItem.remix/script.config.json"]') .openFile('.remix/script.config.json') }, - 'check config file content': function (browser: NightwatchBrowser) { + 'check config file content #group1': function (browser: NightwatchBrowser) { browser .getEditorValue((content) => { console.log(JSON.parse(content)) @@ -55,7 +55,7 @@ const tests = { browser.assert.ok(parsed.defaultConfig === 'ethers6', 'config file content is correct') }) }, - 'execute ethers6 script': function (browser: NightwatchBrowser) { + 'execute ethers6 script #group1': function (browser: NightwatchBrowser) { browser .click('*[data-id="treeViewUltreeViewMenu"]') // make sure we create the file at the root folder .addFile('deployWithEthersJs.js', { content: deployWithEthersJs }) @@ -67,7 +67,7 @@ const tests = { .executeScriptInTerminal('remix.execute(\'deployWithEthersJs.js\')') .waitForElementContainsText('*[data-id="terminalJournal"]', '0xd9145CCE52D386f254917e481eB44e9943F39138', 60000) }, - 'switch workspace it should be default again': function (browser: NightwatchBrowser) { + 'switch workspace it should be default again #group1': function (browser: NightwatchBrowser) { browser .clickLaunchIcon('filePanel') .pause(2000) @@ -90,7 +90,7 @@ const tests = { .waitForElementVisible('[data-id="dependency-ethers-^5"]') .waitForElementVisible('[data-id="sr-notloaded-zksyncv6"]') }, - 'open template that sets a config': function (browser: NightwatchBrowser) { + 'open template that sets a config #group1': function (browser: NightwatchBrowser) { browser .waitForElementVisible('*[data-id="workspacesSelect"]') .click('*[data-id="workspacesSelect"]') @@ -99,6 +99,7 @@ const tests = { .waitForElementVisible('*[data-id="create-introToEIP7702"]') .click('*[data-id="create-introToEIP7702"]') .modalFooterOKClick('TemplatesSelection') + .waitForElementVisible('[data-id="treeViewLitreeViewItemcontracts"]', 60000) // .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/Example7702.sol"]') .waitForElementVisible({ locateStrategy: 'xpath', @@ -108,13 +109,13 @@ const tests = { locateStrategy: 'xpath', selector: "//li[@data-id='UIScriptRunner' and @role='tab']" }) - .waitForElementVisible('[data-id="sr-notloaded-default"]') - .waitForElementVisible('[data-id="sr-loaded-ethers6"]') + .waitForElementVisible('[data-id="sr-notloaded-default"]', 60000) + .waitForElementVisible('[data-id="sr-loaded-ethers6"]', 60000) }, - 'reset to default after template': function (browser: NightwatchBrowser) { + 'reset to default after template #group1': function (browser: NightwatchBrowser) { browser .refreshPage() - .waitForElementVisible('*[data-id="treeViewLitreeViewItemscripts"', 30000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemscripts"', 60000) .click('*[data-id="treeViewLitreeViewItemscripts"') .pause(1000) .element('css selector', 'li[data-id^="treeViewLitreeViewItemscripts/"][data-id$=".ts"]', function (res) { @@ -124,20 +125,23 @@ const tests = { browser .click('li[data-id^="treeViewLitreeViewItemscripts/"]:not([data-id$=".ts"])') .pause(500) - .waitForElementVisible('li[data-id^="treeViewLitreeViewItemscripts/"][data-id$=".ts"]', 30000) + .waitForElementVisible('li[data-id^="treeViewLitreeViewItemscripts/"][data-id$=".ts"]', 60000) .click('li[data-id^="treeViewLitreeViewItemscripts/"][data-id$=".ts"]') } }) .pause(1000) - .waitForElementVisible('*[data-id="run-script-dropdown-trigger"]', 30000) + .waitForElementVisible('*[data-id="run-script-dropdown-trigger"]', 60000) .pause(1000) .click('*[data-id="run-script-dropdown-trigger"]') .pause(1000) .click('*[data-id="open-script-configuration-menu-item"]') - .waitForElementVisible('label[data-id="sr-loaded-default"]', 60000) + .waitForElementVisible('label[data-id="sr-notloaded-default"]', 60000) + .waitForElementVisible('label[data-id="sr-loaded-ethers6"]', 60000) + .click('label[data-id="sr-notloaded-default"]') .waitForElementVisible('label[data-id="sr-notloaded-ethers6"]', 60000) + .waitForElementVisible('label[data-id="sr-loaded-default"]', 60000) }, - 'switch to default workspace that should be on ethers6': function (browser: NightwatchBrowser) { + 'switch to default workspace that should be on ethers6 #group1': function (browser: NightwatchBrowser) { browser .switchWorkspace('default_workspace') .waitForElementVisible({ diff --git a/apps/remix-ide-e2e/src/tests/search.test.ts b/apps/remix-ide-e2e/src/tests/search.test.ts index f4e7fb860e2..8b0970afc58 100644 --- a/apps/remix-ide-e2e/src/tests/search.test.ts +++ b/apps/remix-ide-e2e/src/tests/search.test.ts @@ -18,11 +18,11 @@ module.exports = { .waitForElementContainsText('*[data-id="search_results"]', '3_BALLOT.SOL', 60000) .waitForElementContainsText('*[data-id="search_results"]', 'contracts', 60000) .waitForElementContainsText('*[data-id="search_results"]', 'README.TXT', 60000) - .waitForElementContainsText('*[data-id="search_results"]', 'file must') - .waitForElementContainsText('*[data-id="search_results"]', 'be compiled') - .waitForElementContainsText('*[data-id="search_results"]', 'that person al') - .waitForElementContainsText('*[data-id="search_results"]', 'sender.voted') - .waitForElementContainsText('*[data-id="search_results"]', 'read') + .waitForElementContainsText('*[data-id="search_results"]', 'file must', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'be compiled', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'that person al', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'sender.voted', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'read', 60000) .elements('css selector', '.search_plugin_search_line', (res) => { Array.isArray(res.value) && browser.assert.equal(res.value.length, 7) }) diff --git a/apps/remix-ide-e2e/src/tests/signingMessage.test.ts b/apps/remix-ide-e2e/src/tests/signingMessage.test.ts index 53edec78880..3494000247d 100644 --- a/apps/remix-ide-e2e/src/tests/signingMessage.test.ts +++ b/apps/remix-ide-e2e/src/tests/signingMessage.test.ts @@ -56,7 +56,7 @@ module.exports = { 'Test EIP 712 Signature': function (browser: NightwatchBrowser) { browser.waitForElementPresent('i[id="remixRunSignMsg"]') .click('i[id="remixRunSignMsg"]') - .waitForElementVisible('*[data-id="signMessageTextarea"]', 120000) + .waitForElementVisible('*[data-id="signMessageTextarea"]', 60000) .click('*[data-id="sign-eip-712"]') .waitForElementVisible('*[data-id="udappNotify-modal-footer-ok-react"]') .modalFooterOKClick('udappNotify') diff --git a/apps/remix-ide-e2e/src/tests/solidityImport.test.ts b/apps/remix-ide-e2e/src/tests/solidityImport.test.ts index 63d9a94eb8a..f59017d05e0 100644 --- a/apps/remix-ide-e2e/src/tests/solidityImport.test.ts +++ b/apps/remix-ide-e2e/src/tests/solidityImport.test.ts @@ -93,9 +93,7 @@ module.exports = { .setSolidityCompilerVersion('soljson-v0.8.7+commit.e28d00a7.js') .waitForElementPresent({ selector: `//*[@data-id='compilerloaded' and @data-version='soljson-v0.8.7+commit.e28d00a7.js']`, - locateStrategy: 'xpath', - timeout: 120000 - }) + locateStrategy: 'xpath', timeout: 120000 }) .clickLaunchIcon('filePanel') .click('li[data-id="treeViewLitreeViewItemREADME.txt"') .addFile('Untitled9.sol', sources[8]['Untitled9.sol']) @@ -122,9 +120,7 @@ module.exports = { .setSolidityCompilerVersion('soljson-v0.8.7+commit.e28d00a7.js') .waitForElementPresent({ selector: `//*[@data-id='compilerloaded' and @data-version='soljson-v0.8.7+commit.e28d00a7.js']`, - locateStrategy: 'xpath', - timeout: 120000 - }) + locateStrategy: 'xpath', timeout: 120000 }) .clickLaunchIcon('filePanel') .click('li[data-id="treeViewLitreeViewItemREADME.txt"') .addFile('package.json', sources[9]['package.json']) @@ -152,9 +148,7 @@ module.exports = { .setSolidityCompilerVersion('soljson-v0.8.30+commit.73712a01.js') .waitForElementPresent({ selector: `//*[@data-id='compilerloaded' and @data-version='soljson-v0.8.30+commit.73712a01.js']`, - locateStrategy: 'xpath', - timeout: 120000 - }) + locateStrategy: 'xpath', timeout: 120000 }) .clickLaunchIcon('filePanel') .click('li[data-id="treeViewLitreeViewItemREADME.txt"') .addFile('remappings.txt', sources[10]['remappings.txt']) @@ -178,7 +172,7 @@ module.exports = { .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]') .setValue('[data-id="modalDialogCustomPromptTextClone"]', 'https://github.com/remix-project-org/remix-reward') .click('[data-id="topbarModal-modal-footer-ok-react"]') - .waitForElementPresent('.fa-spinner') + .waitForElementPresent('.fa-spinner', 120000) .waitForElementNotPresent('.fa-spinner', 120000) .waitForElementVisible('*[data-id="treeViewLitreeViewItem.git"]') .waitForElementContainsText('[data-id="workspacesSelect"]', 'remix-reward') diff --git a/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts b/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts index f33ce4a070d..3a12aeb41a0 100644 --- a/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts +++ b/apps/remix-ide-e2e/src/tests/solidityUnittests.test.ts @@ -59,13 +59,13 @@ module.exports = { .click('*[data-id="testTabCheckAllTests"]') .clickElementAtPosition('.singleTestLabel', 1) .scrollAndClick('*[data-id="testTabRunTestsTabRunAction"]') - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'MyTest (tests/simple_storage_test.sol)', 120000) - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', '✓ Initial value should be100', 120000) - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', '✓ Value is set200', 120000) - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', '✘ Should fail for wrong value200', 120000) - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'Passed: 2', 120000) - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'Failed: 1', 120000) - .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'FAILMyTest (tests/simple_storage_test.sol)', 120000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'MyTest (tests/simple_storage_test.sol)', 60000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', '✓ Initial value should be100', 60000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', '✓ Value is set200', 60000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', '✘ Should fail for wrong value200', 60000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'Passed: 2', 60000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'Failed: 1', 60000) + .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'FAILMyTest (tests/simple_storage_test.sol)', 60000) // '.failed_tests_simple_storage_test_solMyTest' is the class for 'FAIL' label .verify.elementPresent('.failed_tests_simple_storage_test_solMyTest') }, @@ -113,7 +113,7 @@ module.exports = { .clickElementAtPosition('.singleTestLabel', 2) .scrollAndClick('*[data-id="testTabRunTestsTabRunAction"]') .waitForElementContainsText('*[data-id="testTabSolidityUnitTestsOutput"]', 'SyntaxError: No visibility specified', 120000) - .waitForElementContainsText('*[data-id="testTabTestsExecutionStoppedError"]', 'The test execution has been stopped because of error(s) in your test file', 120000) + .waitForElementContainsText('*[data-id="testTabTestsExecutionStoppedError"]', 'The test execution has been stopped because of error(s) in your test file', 60000) .click('#solidityUnittestsOutput *[data-id="tests/compilationError_test.sol"]') .pause(1000) .getEditorValue((content) => browser.assert.ok(content.indexOf('contract failOnCompilation {') !== -1)) @@ -172,7 +172,7 @@ module.exports = { .waitForElementVisible('*[data-id="topbar-settingsIcon"]') .click('*[data-id="topbar-settingsIcon"]') .clickLaunchIcon('solidityUnitTesting') - .waitForElementPresent('*[data-id="uiPathInput"]', 3000) + .waitForElementPresent('*[data-id="uiPathInput"]', 60000) .clearValue('*[data-id="uiPathInput"]') .setValue('*[data-id="uiPathInput"]', 'tests1') .click('*[data-id="testTabGenerateTestFolder"]') @@ -219,10 +219,10 @@ module.exports = { .pause(2000) .scrollAndClick('#runTestsTabRunAction') .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 120000) - .waitForElementPresent('#solidityUnittestsOutput div[class^="testPass"]', 60000) - .waitForElementContainsText('#solidityUnittestsOutput', 'tests/Ballot_test.sol', 60000) - .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winning proposal', 60000) - .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winnin proposal with return value', 60000) + .waitForElementPresent('#solidityUnittestsOutput div[class^="testPass"]', 120000) + .waitForElementContainsText('#solidityUnittestsOutput', 'tests/Ballot_test.sol', 120000) + .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winning proposal', 120000) + .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winnin proposal with return value', 120000) }, 'Solidity Unit tests with hardhat console log #group4': function (browser: NightwatchBrowser) { @@ -243,7 +243,7 @@ module.exports = { .click('*[id="idsingleTesttests/Ballot_test.sol"]') .click('#runTestsTabRunAction') .pause(2000) - .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 120000) + .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 60000) .waitForElementPresent('#solidityUnittestsOutput div[class^="testPass"]', 60000) .waitForElementContainsText('#solidityUnittestsOutput', 'tests/hhLogs_test.sol', 60000) .pause(2000) @@ -267,7 +267,7 @@ module.exports = { .click('*[id="idsingleTesttests/Ballot_test.sol"]') .click('#runTestsTabRunAction') .pause(2000) - .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 120000) + .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 60000) .waitForElementContainsText('#solidityUnittestsOutput', 'tests/ballotFailedLog_test.sol', 60000) .assert.containsText('#journal', 'Check winning proposal:') .assert.containsText('#journal', 'Inside checkWinningProposal') @@ -283,7 +283,7 @@ module.exports = { .waitForElementVisible('*[id="idsingleTesttests/Ballot_test.sol"]', 60000) .click('*[id="idsingleTesttests/Ballot_test.sol"]') .click('#runTestsTabRunAction') - .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 120000) + .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 60000) .waitForElementContainsText('#solidityUnittestsOutput', 'tests/ballotFailedDebug_test.sol', 60000) .waitForElementContainsText('#solidityUnittestsOutput', '✘ Check winning proposal failed', 60000) .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winning proposal passed', 60000) @@ -315,7 +315,7 @@ module.exports = { .openFile('tests/ballotFailedDebug_test.sol') .pause(2000) .clickLaunchIcon('solidityUnitTesting').pause(2000) - .waitForElementPresent('#Check_winning_proposal_again') + .waitForElementPresent('#Check_winning_proposal_again', 60000) .scrollAndClick('#Check_winning_proposal_again') .pause(5000) .waitForElementContainsText('*[data-id="sidePanelSwapitTitle"]', 'DEBUGGER', 60000) @@ -358,7 +358,7 @@ module.exports = { .pause(5000) .clickLaunchIcon('solidityUnitTesting') .scrollAndClick('#runTestsTabRunAction') - .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 120000) + .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 60000) .waitForElementPresent('#solidityUnittestsOutput div[class^="testPass"]', 60000) .waitForElementContainsText('#solidityUnittestsOutput', 'tests/Ballot_test.sol', 60000) .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winning proposal', 60000) diff --git a/apps/remix-ide-e2e/src/tests/specialFunctions.test.ts b/apps/remix-ide-e2e/src/tests/specialFunctions.test.ts index c9d21451059..f25ab51e7d4 100644 --- a/apps/remix-ide-e2e/src/tests/specialFunctions.test.ts +++ b/apps/remix-ide-e2e/src/tests/specialFunctions.test.ts @@ -19,7 +19,7 @@ module.exports = { }, 'Use special functions receive/fallback - both are declared, sending data #group1': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#icon-panel', 10000) + browser.waitForElementVisible('#icon-panel', 60000) .testContracts('receiveAndFallback.sol', sources[0]['receiveAndFallback.sol'], ['CheckSpecials']) // compile .clickLaunchIcon('udapp') .selectAccount('0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c') // this account will be used for this test suite @@ -85,7 +85,7 @@ module.exports = { }) }, 'Use special functions receive/fallback - only receive is declared, sending wei #group2': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#icon-panel', 10000) + browser.waitForElementVisible('#icon-panel', 60000) .testContracts('receiveOnly.sol', sources[1]['receiveOnly.sol'], ['CheckSpecials']) .clickLaunchIcon('udapp') .selectContract('CheckSpecials') @@ -113,7 +113,7 @@ module.exports = { }) }, 'Use special functions receive/fallback - only fallback declared and is payable, sending wei #group3': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#icon-panel', 10000) + browser.waitForElementVisible('#icon-panel', 60000) .testContracts('fallbackOnlyPayable.sol', sources[2]['fallbackOnlyPayable.sol'], ['CheckSpecials']) .clickLaunchIcon('udapp') .selectContract('CheckSpecials') @@ -142,7 +142,7 @@ module.exports = { }) }, 'Use special functions receive/fallback - only fallback is declared, fallback should fail cause not payable, sending wei #group4': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#icon-panel', 10000) + browser.waitForElementVisible('#icon-panel', 60000) .testContracts('fallbackOnlyNotPayable.sol', sources[3]['fallbackOnlyNotPayable.sol'], ['CheckSpecials']) .clickLaunchIcon('udapp') .selectContract('CheckSpecials') @@ -159,11 +159,11 @@ module.exports = { }) }, 'Use special functions receive/fallback - receive and fallback are declared, sending data and wei #group6': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#icon-panel', 10000) + browser.waitForElementVisible('#icon-panel', 60000) .testContracts('receiveAndFallbackBothPayable.sol', sources[4]['receiveAndFallbackBothPayable.sol'], ['CheckSpecials']) .clickLaunchIcon('udapp') .selectContract('CheckSpecials') - .waitForElementVisible('#value') + .waitForElementVisible('#value', 60000) .clearValue('#value') .setValue('#value', '0') .pause(2000) @@ -193,11 +193,11 @@ module.exports = { }) }, 'Use special functions receive/fallback - receive and fallback are not declared, sending nothing #group5': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('#icon-panel', 10000) + browser.waitForElementVisible('#icon-panel', 60000) .testContracts('notSpecial.sol', sources[5]['notSpecial.sol'], ['CheckSpecials']) .clickLaunchIcon('udapp') .selectContract('CheckSpecials') - .waitForElementVisible('#value') + .waitForElementVisible('#value', 60000) .clearValue('#value') .setValue('#value', '0').pause(2000) .createContract('') diff --git a/apps/remix-ide-e2e/src/tests/staticAnalysis.test.ts b/apps/remix-ide-e2e/src/tests/staticAnalysis.test.ts index 7723b2cc654..f12b8ed84a7 100644 --- a/apps/remix-ide-e2e/src/tests/staticAnalysis.test.ts +++ b/apps/remix-ide-e2e/src/tests/staticAnalysis.test.ts @@ -43,11 +43,11 @@ module.exports = { .clickLaunchIcon('solidityStaticAnalysis') .useXpath() .click('//*[@id="staticAnalysisRunBtn"]') - // .waitForElementPresent('div#staticanalysisresult .warning', 5000) - .waitForElementPresent('//*[@id="staticanalysisresult"]', 5000) + // .waitForElementPresent('div#staticanalysisresult .warning', 60000) + .waitForElementPresent('//*[@id="staticanalysisresult"]', 60000) .useCss() // Check warning count - .waitForElementVisible('span#ssaRemixtab') + .waitForElementVisible('span#ssaRemixtab', 60000) .click('span#ssaRemixtab') .assert.containsText('span#ssaRemixtab > *[data-id="RemixStaticAnalysisErrorCount"]', '3') .verify.elementPresent('input[name="showLibWarnings"]') @@ -55,7 +55,7 @@ module.exports = { .verify.elementPresent('label[id="headingshowLibWarnings"]') .click('label[id="headingshowLibWarnings"]') .pause(1000) - .waitForElementVisible('span#ssaRemixtab') + .waitForElementVisible('span#ssaRemixtab', 60000) .click('span#ssaRemixtab') .assert.containsText('span#ssaRemixtab > *[data-id="RemixStaticAnalysisErrorCount', '388') .click('label[id="headingshowLibWarnings"]') @@ -67,7 +67,7 @@ module.exports = { function runTests (browser: NightwatchBrowser) { browser - .waitForElementVisible('#icon-panel', 10000) + .waitForElementVisible('#icon-panel', 60000) .clickLaunchIcon('solidity') .pause(10000) .testContracts('Untitled.sol', sources[0]['Untitled.sol'], ['TooMuchGas', 'test1', 'test2']) diff --git a/apps/remix-ide-e2e/src/tests/templates.test.ts b/apps/remix-ide-e2e/src/tests/templates.test.ts index 952e45d5fc5..25b75ee8545 100644 --- a/apps/remix-ide-e2e/src/tests/templates.test.ts +++ b/apps/remix-ide-e2e/src/tests/templates.test.ts @@ -149,16 +149,16 @@ function runTemplateChecks( if (mode === 'create') { browser - .waitForElementVisible(`[data-id="create-${value}"]`, 5000) + .waitForElementVisible(`[data-id="create-${value}"]`, 60000) .click(`[data-id="create-${value}"]`) } else { browser - .waitForElementVisible(`[data-id="create-blank"]`, 5000) + .waitForElementVisible(`[data-id="create-blank"]`, 60000) .click(`[data-id="create-blank"]`) } browser - .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 2000) + .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 60000) .click('*[data-id="TemplatesSelection-modal-footer-ok-react"]') .pause(1000) @@ -168,17 +168,17 @@ function runTemplateChecks( if (result.status == 0) { openTemplatesExplorer(browser) browser - .waitForElementVisible(`[data-id="add-${value}"]`, 5000) + .waitForElementVisible(`[data-id="add-${value}"]`, 60000) .click(`[data-id="add-${value}"]`) if (clickOk) { browser - .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 2000) + .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 60000) .click('*[data-id="TemplatesSelection-modal-footer-ok-react"]') } checkSelectors.forEach(selector => { console.log(`Checking selector: ${selector}`) - browser.waitForElementVisible(selector, 30000) + browser.waitForElementVisible(selector, 60000) }) } }) @@ -190,7 +190,7 @@ function runTemplateChecks( checkSelectors.forEach(selector => { console.log(`Checking selector: ${selector}`) - browser.waitForElementVisible(selector, 30000) + browser.waitForElementVisible(selector, 60000) }) } }) @@ -202,11 +202,11 @@ function testTemplateOptions(browser: NightwatchBrowser, mode: 'create' | 'add') const selector = mode === 'create' ? '[data-id="create-ozerc20"]' : '[data-id="add-ozerc20"]' browser - .waitForElementVisible(selector, 5000) + .waitForElementVisible(selector, 60000) .click(selector) browser - .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 2000) + .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 60000) // Simulate user selecting options setTemplateOptions(browser, { mintable: true, burnable: true, upgradeability: 'uups' }) @@ -217,7 +217,7 @@ function testTemplateOptions(browser: NightwatchBrowser, mode: 'create' | 'add') // Verify expected file was created browser - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/MyToken.sol"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts/MyToken.sol"]', 60000) .click('*[data-id="treeViewLitreeViewItemcontracts/MyToken.sol"]') .pause(1000) .getEditorValue(editorValue => { @@ -252,9 +252,9 @@ const tests = { 'Test template options with add #group2': function (browser: NightwatchBrowser) { openTemplatesExplorer(browser) browser - .waitForElementVisible(`[data-id="create-remixDefault"]`, 5000) + .waitForElementVisible(`[data-id="create-remixDefault"]`, 60000) .click(`[data-id="create-remixDefault"]`) - .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 2000) + .waitForElementVisible('*[data-id="TemplatesSelection-modal-footer-ok-react"]', 60000) .click('*[data-id="TemplatesSelection-modal-footer-ok-react"]') .pause(1000) diff --git a/apps/remix-ide-e2e/src/tests/terminal.test.ts b/apps/remix-ide-e2e/src/tests/terminal.test.ts index 52a2aa606e5..8c9e1e51717 100644 --- a/apps/remix-ide-e2e/src/tests/terminal.test.ts +++ b/apps/remix-ide-e2e/src/tests/terminal.test.ts @@ -13,7 +13,7 @@ module.exports = { }, 'Should execution a simple console command #group1': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="terminalCli"]', 10000) + .waitForElementVisible('*[data-id="terminalCli"]', 60000) .executeScriptInTerminal('console.log(1 + 1)') .pause(2000) .waitForElementContainsText('*[data-id="terminalJournal"]', '2', 60000) @@ -137,16 +137,16 @@ module.exports = { .pause(1000) // compile Storage .executeScriptInTerminal('remix.execute(\'scripts/storage.test.js\')') .pause(1000) - .waitForElementContainsText('*[data-id="terminalJournal"]', 'RUNS scripts/script.ts....') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'storage contract Address:') - .waitForElementContainsText('*[data-id="terminalJournal"]', '✓ test initial value') - .waitForElementContainsText('*[data-id="terminalJournal"]', '✓ test updating and retrieving updated value') - .waitForElementContainsText('*[data-id="terminalJournal"]', '✘ fail test updating and retrieving updated value') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Expected: 55') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Received: 56') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Message: incorrect number: expected 56 to equal 55') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Passed: 2') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Failed: 1') + .waitForElementContainsText('*[data-id="terminalJournal"]', 'RUNS scripts/script.ts....', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'storage contract Address:', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '✓ test initial value', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '✓ test updating and retrieving updated value', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '✘ fail test updating and retrieving updated value', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Expected: 55', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Received: 56', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Message: incorrect number: expected 56 to equal 55', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Passed: 2', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Failed: 1', 60000) }, 'Run tests using Mocha for a contract with library deployment and check result logging in the terminal #group4': function (browser: NightwatchBrowser) { browser @@ -160,15 +160,15 @@ module.exports = { .pause(1000) // compile StorageWithLib .executeScriptInTerminal('remix.execute(\'scripts/storageWithLib.test.js\')') .pause(1000) - .waitForElementContainsText('*[data-id="terminalJournal"]', 'RUNS scripts/script.ts....') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Storage') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'deploying lib:') - .waitForElementContainsText('*[data-id="terminalJournal"]', '✘ test library integration by calling a lib method') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Expected: 34') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Received: 14') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Message: expected \'14\' to equal \'34\'') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Passed: 0') - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Failed: 1') + .waitForElementContainsText('*[data-id="terminalJournal"]', 'RUNS scripts/script.ts....', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Storage', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'deploying lib:', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '✘ test library integration by calling a lib method', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Expected: 34', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Received: 14', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Message: expected \'14\' to equal \'34\'', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Passed: 0', 60000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Failed: 1', 60000) }, 'Should print hardhat logs #group4': function (browser: NightwatchBrowser) { browser @@ -212,10 +212,10 @@ module.exports = { browser.addFile('scripts/test_filtering_event.ts', { content: test_filtering_event.replace('
', addressRef) }) .executeScriptInTerminal('remix.execute(\'scripts/test_filtering_event.ts\')') .pause(1000) - .waitForElementContainsText('*[data-id="terminalJournal"]', '1') + .waitForElementContainsText('*[data-id="terminalJournal"]', '1', 60000) .waitForElementContainsText('*[data-id="terminalJournal"]', 'true') .executeScriptInTerminal('remix.execute(\'scripts/test_filtering_event.ts\')') // re-emit the event - .waitForElementContainsText('*[data-id="terminalJournal"]', '2') + .waitForElementContainsText('*[data-id="terminalJournal"]', '2', 60000) .waitForElementContainsText('*[data-id="terminalJournal"]', 'false') }) @@ -257,9 +257,9 @@ module.exports = { // check if the input of the transaction is being logged (web3 call) .waitForElementContainsText('*[data-id="terminalJournal"]', '0x2b0006fa00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004e9e0000000000000000000000000000000000000000000000000000000000004ea373ded44d6900b8b479935bee9c82176261653e334586e0fd282f569357c0777bd9d084474837ac94bf96f2e26590222a2b8e46545657c7cf06ce2833d267bd6f131b5b3fd36cb1ca3e07cf422224df0766d1a677bbdb7ee4cc0d634efa5367a302a94dac422a16b9b8d5c10fe0555924f8189f6b498bef507b1d32e7915bd4df184f51e6d79ae6a1b11d5745ce7d625cecc3bd0dc50af4f999ffb927225f5e5c019b499f5e1fdcbc70c45df61df76013d1b0d45cdf6a267dac1b4620c0db2efd251f6548509c9c69f5bd9d1ee38ac0df0c73be2774f7d2e1fb7ef5129010f29d091e3c48aed0f035fc29804c99927d33ff2a19ff526979355ac50b2542bc5d8f2d41e4f850d5981e0420807469e828b03173b96b757fbaeacda335e11b3ab8b02a48456fab35d41ca26abde751d5fca8ef5e7ba5295278b6e46ce2aab6c10b3d185a6137d3e5c28bb8dd3a797feaf35520fcb949ea074e1869e0011ef01f8162135e44bb797d3d6215ff74ffbee972c97264fc15d11c840e6a7e796dc1a418572f6dbcc842594a558e1a9e3cb7a159284e16fec758bbc303d13edc28fb6d8bb110c3a398e4ded1748da9854eb84679ad0c99bc59bea7956b521db3ed0a9057510cc11365858704989690f0d891af81b213b1f2e91e41e4998a467656eac87e7025ac2840c17f2b106df7d32a0139036bdf5d87344ca37e9ce770e0dbeb5e021d03a7d496a6695eb06d3de9258b43f3883ce155767962b52083504b19d6d609090a2f96e9724902bf1adbf57359ac1dda48a8ffe596b8d95cac1429378769a6ec2ff1c8a9c0bc343b0a6468f36696bfb202cde9f6cd5241b814096d777751b44f0cc2ac9e7ba142227e8d5f2dd8da62573953540da1abce82c59287b2f7a87a111851758c2505d8c1ded6c42a49fc5577451ee56126d2275da490baa645c3bcac0c31dabee7aa35e6cdffb56ac0d952c2583c6f50f906dfb96f5a98c49a5919031cff880bffbe371a50162a7bd0fa0398a5898eaf6ad6db868a7d807846a3592325bb4207d67ad96bac76435368962ba8944d0201c2f620fb29373a6f35c815d101af98111e9b4cc61e8ae77fc63ce375068328ec8d05b49486666fb0f756f99d2fe747c95b2a553965f304a324879393897315d310841f0a200cd156f6ca4ed2', 120000) // check if the logsBloom is being logged (web3 call) - .waitForElementContainsText('*[data-id="terminalJournal"]', '0x0fbbd94c448fe6949f848380a1d145a974f386624b4b10aa40f9afb212b3ddeb', 120000) // hash of 4757766 + .waitForElementContainsText('*[data-id="terminalJournal"]', '0x0fbbd94c448fe6949f848380a1d145a974f386624b4b10aa40f9afb212b3ddeb', 60000) // hash of 4757766 // check if the logsBloom is being logged (ethers.js call) - .waitForElementContainsText('*[data-id="terminalJournal"]', '0x9db899cb75888a630ba50a1644c243b83d2eb38525eb828a06a5e8bb5663c0b0', 120000) // hash of 4757767 + .waitForElementContainsText('*[data-id="terminalJournal"]', '0x9db899cb75888a630ba50a1644c243b83d2eb38525eb828a06a5e8bb5663c0b0', 60000) // hash of 4757767 }, 'Should listen on all transactions #group8': function (browser: NightwatchBrowser) { @@ -333,7 +333,7 @@ module.exports = { timeout: 240000 }) .executeScriptInTerminal(`web3.eth.getCode('0x180587b00c8642e2c7ac3a758712d97e6f7bdcc7')`) // mainnet contract - .waitForElementContainsText('*[data-id="terminalJournal"]', '0x608060405260043610601f5760003560e01c80635c60da1b14603157602b565b36602b576029605f565b005b6029605f565b348015603c57600080fd5b5060436097565b6040516001600160a01b03909116815260200160405180910390f35b609560917f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b60d1565b565b600060c97f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b90565b3660008037600080366000845af43d6000803e80801560ef573d6000f35b3d6000fdfea2646970667358221220969dbb4b1d8aec2bb348e26488dc1a33b6bcf0190f567d161312ab7ca9193d8d64736f6c63430008110033', 120000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '0x608060405260043610601f5760003560e01c80635c60da1b14603157602b565b36602b576029605f565b005b6029605f565b348015603c57600080fd5b5060436097565b6040516001600160a01b03909116815260200160405180910390f35b609560917f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b60d1565b565b600060c97f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b90565b3660008037600080366000845af43d6000803e80801560ef573d6000f35b3d6000fdfea2646970667358221220969dbb4b1d8aec2bb348e26488dc1a33b6bcf0190f567d161312ab7ca9193d8d64736f6c63430008110033', 60000) .click('*[data-id="terminalClearConsole"]') }, @@ -398,7 +398,7 @@ module.exports = { .switchEnvironment('vm-mainnet-fork') .clickLaunchIcon('filePanel') .addFile('test_mainnet.sol', { content: script }) - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) .pause(10000) // the parser need to parse the code .useXpath() .scrollToLine(16) @@ -411,7 +411,7 @@ module.exports = { .sendKeys('r') }) .useCss() - .waitForElementContainsText('*[data-id="terminalJournal"]', '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045', 120000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045', 60000) } }, @@ -426,7 +426,7 @@ module.exports = { const path = "//*[@class='view-line' and contains(.,'runSomething') and contains(.,'view')]//span//span[contains(.,'(')]" browser .addFile('test.sol', { content: script }) - .waitForElementVisible('#editorView') + .waitForElementVisible('#editorView', 60000) .pause(10000) // the parser need to parse the code .useXpath() .scrollToLine(3) diff --git a/apps/remix-ide-e2e/src/tests/transactionExecution.test.ts b/apps/remix-ide-e2e/src/tests/transactionExecution.test.ts index 97fb0f12885..bd9d3549155 100644 --- a/apps/remix-ide-e2e/src/tests/transactionExecution.test.ts +++ b/apps/remix-ide-e2e/src/tests/transactionExecution.test.ts @@ -231,7 +231,7 @@ module.exports = { .createContract('42, 24') .openFile('Storage.sol') .clickLaunchIcon('udapp') - .waitForElementVisible('*[data-bs-title="uint256 p"]', 10000) + .waitForElementVisible('*[data-bs-title="uint256 p"]', 60000) .createContract('102') // this creation will fail if the component hasn't been properly reset. .clickInstance(1) .clickFunction('store - transact (not payable)', { types: 'uint256 num', values: '24' }) diff --git a/apps/remix-ide-e2e/src/tests/url.test.ts b/apps/remix-ide-e2e/src/tests/url.test.ts index b35647cdffd..f2caf7d8b69 100644 --- a/apps/remix-ide-e2e/src/tests/url.test.ts +++ b/apps/remix-ide-e2e/src/tests/url.test.ts @@ -354,15 +354,15 @@ module.exports = { .url('http://127.0.0.1:8080?calls=fileManager//open//contracts/3_Ballot.sol///terminal//log//log') .refreshPage() .waitForElementVisible('*[data-shared="tooltipPopup"]') - .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'initiating fileManager and calling "open" ...') - .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'initiating terminal and calling "log" ...') + .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'initiating fileManager and calling "open" ...', 60000) + .waitForElementContainsText('*[data-shared="tooltipPopup"]', 'initiating terminal and calling "log" ...', 60000) }, 'Import Github folder from URL params #group4': function (browser: NightwatchBrowser) { browser .url('http://127.0.0.1:8080/#ghfolder=https://github.com/ethereum/remix-project/tree/master/apps/remix-ide/contracts/hardhat') .refreshPage() - .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]', 40000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemcontracts"]', 60000) .currentWorkspaceIs('code-sample') .openFile('contracts') // .openFile('contracts/Lock.sol') diff --git a/apps/remix-ide-e2e/src/tests/verticalIconsPanel.test.ts b/apps/remix-ide-e2e/src/tests/verticalIconsPanel.test.ts index fc94544df47..1eef4842458 100644 --- a/apps/remix-ide-e2e/src/tests/verticalIconsPanel.test.ts +++ b/apps/remix-ide-e2e/src/tests/verticalIconsPanel.test.ts @@ -8,11 +8,11 @@ module.exports = { }, 'Checks vertical icons panel context menu': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 10000) + browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="verticalIconsKindpluginManager"]') .click('*[data-id="verticalIconsKindpluginManager"]') .scrollAndClick('*[data-id="pluginManagerComponentActivateButtondebugger"]') - .waitForElementVisible('*[data-id="pluginManagerComponentDeactivateButtondebugger"]', 7000) + .waitForElementVisible('*[data-id="pluginManagerComponentDeactivateButtondebugger"]', 60000) .rightClickCustom('[data-id="verticalIconsKinddebugger"]') .waitForElementVisible('*[id="menuitemdeactivate"]') .waitForElementVisible('*[id="menuitemdocumentation"]') @@ -20,8 +20,8 @@ module.exports = { }, 'Checks vertical icons panel context menu deactivate': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 10000) - .waitForElementVisible('*[data-id="verticalIconsKinddebugger"]', 7000) + browser.waitForElementVisible('div[data-id="remixIdeIconPanel"]', 60000) + .waitForElementVisible('*[data-id="verticalIconsKinddebugger"]', 60000) .pause(5000) .rightClickCustom('[data-id="verticalIconsKinddebugger"]') .click('*[id="menuitemdeactivate"]') diff --git a/apps/remix-ide-e2e/src/tests/vm_state.test.ts b/apps/remix-ide-e2e/src/tests/vm_state.test.ts index 4e80540531c..121b9eadf13 100644 --- a/apps/remix-ide-e2e/src/tests/vm_state.test.ts +++ b/apps/remix-ide-e2e/src/tests/vm_state.test.ts @@ -15,7 +15,7 @@ const tests = { 'Should show fork and delete VM state icons #group1': function (browser: NightwatchBrowser) { browser .clickLaunchIcon('udapp') - .waitForElementVisible('*[data-id="selected-provider-vm-prague"]', 30000) + .waitForElementVisible('*[data-id="selected-provider-vm-prague"]', 60000) .waitForElementVisible('*[data-id="fork-state-icon"]') .waitForElementVisible('*[data-id="delete-state-icon"]') }, @@ -163,14 +163,14 @@ const tests = { .click('input[data-id="modalDialogForkState"]') .setValue('input[data-id="modalDialogForkState"]', 'forkedState_2') .modalFooterOKClick('udappNotify') - .waitForElementVisible('*[data-shared="tooltipPopup"]', 10000) + .waitForElementVisible('*[data-shared="tooltipPopup"]', 60000) .waitForElementContainsText('*[data-shared="tooltipPopup"]', `New environment 'forkedState_2' created with forked state.`) // check if 'forkedState_2' is selected as current environment .waitForElementPresent('*[data-id="selected-provider-vm-fs-forkedState_2"]') // check if 'forkedState_2' is present in environment explorer .waitForElementPresent('[data-id="remixUIGSforkedState_2"]') // check if 'forkedState_2' is pinned in environment explorer - .waitForElementPresent('[data-id="vm-fs-forkedState_2-pinned"]') + .waitForElementPresent('[data-id="vm-fs-forkedState_2-pinned"]', 60000) // 'forkedState_2' should have 3 blocks .waitForElementContainsText('[data-id="vm-fs-forkedState_2desc"]', 'Latest Block: 3') .click('*[data-id="Deploy - transact (not payable)"]') @@ -193,11 +193,11 @@ const tests = { .click('*[data-id="Deploy - transact (not payable)"]') .pause(10000) .assert.textContains('*[data-id="deployedContractsBadge"]', '1') - .click(('*[data-id="delete-state-icon"]')) + .click('*[data-id="delete-state-icon"]') .waitForElementVisible('*[data-id="udappNotifyModalDialogModalTitle-react"]') .waitForElementVisible('*[data-id="deleteVmStateModal"]') .modalFooterOKClick('udappNotify') - .waitForElementVisible('*[data-shared="tooltipPopup"]', 10000) + .waitForElementVisible('*[data-shared="tooltipPopup"]', 60000) // check if toaster is shown .assert.textContains('*[data-shared="tooltipPopup"]', `VM state reset successfully.`) // check that there are no instances diff --git a/apps/remix-ide-e2e/src/tests/vyper_api.test.ts b/apps/remix-ide-e2e/src/tests/vyper_api.test.ts index f604220fbaf..b3314008cdc 100644 --- a/apps/remix-ide-e2e/src/tests/vyper_api.test.ts +++ b/apps/remix-ide-e2e/src/tests/vyper_api.test.ts @@ -129,7 +129,7 @@ module.exports = { selector:'[data-id="test_error.vy"]', timeout: 60000 }) - .waitForElementContainsText('[data-id="test_error.vy"]', 'ERROR') + .waitForElementContainsText('[data-id="test_error.vy"]', 'ERROR', 60000) .waitForElementContainsText('[data-id="test_error.vy"]', 'StructureException:Unsupported syntax for module namespace') .frameParent() }, diff --git a/apps/remix-ide-e2e/src/tests/workspace.test.ts b/apps/remix-ide-e2e/src/tests/workspace.test.ts index 225e601be2e..c42684bf91e 100644 --- a/apps/remix-ide-e2e/src/tests/workspace.test.ts +++ b/apps/remix-ide-e2e/src/tests/workspace.test.ts @@ -11,7 +11,7 @@ module.exports = { CheckSolidityActivatedAndUDapp: function (browser: NightwatchBrowser) { browser - .waitForElementVisible('#icon-panel', 10000) + .waitForElementVisible('#icon-panel', 60000) .clickLaunchIcon('solidity') .clickLaunchIcon('udapp') }, @@ -20,7 +20,7 @@ module.exports = { browser .pause(5000) .refreshPage() - .waitForElementVisible('#editorView', 30000) + .waitForElementVisible('#editorView', 60000) .getEditorValue((content) => { browser.assert.ok(content.indexOf('contract Ballot {') !== -1, 'content includes Ballot contract') }) diff --git a/apps/remix-ide-e2e/src/tests/workspace_git.test.ts b/apps/remix-ide-e2e/src/tests/workspace_git.test.ts index ee2b040b565..a4a979c16e8 100644 --- a/apps/remix-ide-e2e/src/tests/workspace_git.test.ts +++ b/apps/remix-ide-e2e/src/tests/workspace_git.test.ts @@ -59,7 +59,7 @@ module.exports = { .modalFooterOKClick('TemplatesSelection') .pause(100) .waitForElementVisible('[data-id="workspaceGitPanel"]') - .waitForElementContainsText('[data-id="workspaceGitBranchesDropdown"]', 'main') + .waitForElementContainsText('[data-id="workspaceGitBranchesDropdown"]', 'main', 60000) }, 'check git for the commit #group1': function (browser: NightwatchBrowser) { browser. @@ -90,11 +90,11 @@ module.exports = { .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]') .setValue('[data-id="modalDialogCustomPromptTextClone"]', 'https://github.com/ethereum/awesome-remix') .click('[data-id="topbarModal-modal-footer-ok-react"]') - .waitForElementPresent('.fa-spinner') + .waitForElementPresent('.fa-spinner', 60000) .pause(5000) - .waitForElementNotPresent('.fa-spinner') + .waitForElementNotPresent('.fa-spinner', 60000) .waitForElementVisible('*[data-id="treeViewLitreeViewItem.git"]') - .waitForElementContainsText('[data-id="workspacesSelect"]', 'awesome-remix') + .waitForElementContainsText('[data-id="workspacesSelect"]', 'awesome-remix', 60000) }, 'Should display dgit icon for cloned workspace #group2': function (browser: NightwatchBrowser) { @@ -124,7 +124,7 @@ module.exports = { .click('*[data-id="github-dropdown-item-clone"]') .waitForElementVisible('[data-id="topbarModalModalDialogModalBody-react"]') .click('[data-id="topbarModalModalDialogModalBody-react"]') - .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]') + .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]', 60000) .setValue('[data-id="modalDialogCustomPromptTextClone"]', 'https://github.com/ethereum/awesome-remix') .click('[data-id="topbarModal-modal-footer-ok-react"]') .pause(5000) @@ -135,7 +135,7 @@ module.exports = { .click('*[data-id="github-dropdown-item-clone"]') .waitForElementVisible('[data-id="topbarModalModalDialogModalBody-react"]') .click('[data-id="topbarModalModalDialogModalBody-react"]') - .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]') + .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]', 60000) .setValue('[data-id="modalDialogCustomPromptTextClone"]', 'https://github.com/ethereum/awesome-remix') .click('[data-id="topbarModal-modal-footer-ok-react"]') .pause(5000) @@ -179,17 +179,17 @@ module.exports = { .waitForElementVisible('[data-id="modalDialogCustomPromptTextClone"]') .setValue('[data-id="modalDialogCustomPromptTextClone"]', 'https://github.com/ioedeveloper/test-branch-change') .click('[data-id="topbarModal-modal-footer-ok-react"]') - .waitForElementPresent('.fa-spinner') + .waitForElementPresent('.fa-spinner', 60000) .pause(7000) - .waitForElementNotPresent('.fa-spinner') + .waitForElementNotPresent('.fa-spinner', 60000) .waitForElementContainsText('[data-id="workspacesSelect"]', 'test-branch-change') .waitForElementVisible('[data-id="workspaceGitPanel"]') .waitForElementVisible('[data-id="workspaceGitBranchesDropdown"]') .click('[data-id="workspaceGitBranchesDropdown"]') .pause(1000) - .waitForElementVisible('[data-id="custom-dropdown-menu"]') - .waitForElementContainsText('[data-id="custom-dropdown-items"]', 'origin/dev') - .waitForElementContainsText('[data-id="custom-dropdown-items"]', 'origin/production') + .waitForElementVisible('[data-id="custom-dropdown-menu"]', 60000) + .waitForElementContainsText('[data-id="custom-dropdown-items"]', 'origin/dev', 60000) + .waitForElementContainsText('[data-id="custom-dropdown-items"]', 'origin/production', 60000) .waitForElementContainsText('[data-id="custom-dropdown-items"]', 'origin/setup') .expect.element('[data-id="workspaceGit-main"]').text.to.contain('✓ ') }, @@ -299,15 +299,13 @@ module.exports = { .click('[data-id="modalDialogCustomPromptTextClone"]') .setValue('[data-id="modalDialogCustomPromptTextClone"]', 'https://github.com/bunsenstraat/test-branch-submodule') .click('[data-id="topbarModal-modal-footer-ok-react"]') - .waitForElementPresent('.fa-spinner') + .waitForElementPresent('.fa-spinner', 60000) .waitForElementVisible({ - selector: '*[data-id="treeViewLitreeViewItem.git"]', - timeout: 240000 - }) + selector: '*[data-id="treeViewLitreeViewItem.git"]', timeout: 240000 }) .waitForElementContainsText('[data-id="workspacesSelect"]', 'test-branch-submodule') .waitForElementVisible('[data-id="updatesubmodules"]') .click('[data-id="updatesubmodules"]') - .waitForElementPresent('.fa-spinner') + .waitForElementPresent('.fa-spinner', 60000) .waitForElementVisible({ selector: '*[data-id="treeViewLitreeViewItem.git"]', timeout: 240000, @@ -400,11 +398,9 @@ module.exports = { .click('[data-id="workspaceGit-origin/main"]') .waitForElementVisible('[data-id="updatesubmodules"]') .click('[data-id="updatesubmodules"]') - .waitForElementPresent('.fa-spinner') + .waitForElementPresent('.fa-spinner', 60000) .waitForElementVisible({ - selector: '*[data-id="treeViewLitreeViewItem.git"]', - timeout: 240000 - }) + selector: '*[data-id="treeViewLitreeViewItem.git"]', timeout: 240000 }) .pause(2000) // check recursive submodule .waitForElementVisible('[data-id="treeViewDivtreeViewItemtest-branch-submodule-recursive"]') diff --git a/apps/remixdesktop/test/tests/app/circom-compiler.test.ts b/apps/remixdesktop/test/tests/app/circom-compiler.test.ts index 93f43c45a7f..13760b3dcb3 100644 --- a/apps/remixdesktop/test/tests/app/circom-compiler.test.ts +++ b/apps/remixdesktop/test/tests/app/circom-compiler.test.ts @@ -8,7 +8,7 @@ const tests = { }, 'Should create semaphore workspace': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="homeTabGetStartedsemaphore"]', 20000) + .waitForElementVisible('*[data-id="homeTabGetStartedsemaphore"]', 60000) .click('*[data-id="homeTabGetStartedsemaphore"]') .pause(3000) .windowHandles(function (result) { diff --git a/apps/remixdesktop/test/tests/app/circom-script.test.ts b/apps/remixdesktop/test/tests/app/circom-script.test.ts index ade75b17598..bfc0359883c 100644 --- a/apps/remixdesktop/test/tests/app/circom-script.test.ts +++ b/apps/remixdesktop/test/tests/app/circom-script.test.ts @@ -8,7 +8,7 @@ const tests = { }, 'Should create semaphore workspace': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="homeTabGetStartedsemaphore"]', 20000) + .waitForElementVisible('*[data-id="homeTabGetStartedsemaphore"]', 60000) .click('*[data-id="homeTabGetStartedsemaphore"]') .pause(3000) .windowHandles(function (result) { @@ -41,9 +41,7 @@ const tests = { .waitForElementVisible('[data-id="verticalIconsKindcircuit-compiler"]') .waitForElementVisible({ locateStrategy: 'xpath', - selector: "//span[@class='text-log' and contains(., 'setup done.')]", - timeout: 240000 - }) + selector: "//span[@class='text-log' and contains(., 'setup done.')]", timeout: 240000 }) .waitForElementVisible('*[data-id="treeViewLitreeViewItemscripts/plonk/zk"]') .click('*[data-id="treeViewLitreeViewItemscripts/plonk/zk"]') .waitForElementVisible('*[data-id="treeViewLitreeViewItemscripts/plonk/zk/keys"]') @@ -57,9 +55,7 @@ const tests = { .click('[data-id="compile-action"]') .waitForElementVisible({ locateStrategy: 'xpath', - selector: "//span[@class='text-log' and contains(., 'proof done')]", - timeout: 240000 - }) + selector: "//span[@class='text-log' and contains(., 'proof done')]", timeout: 240000 }) } } diff --git a/apps/remixdesktop/test/tests/app/compiler.test.ts b/apps/remixdesktop/test/tests/app/compiler.test.ts index 8cb81d9e5e4..81b531b4633 100644 --- a/apps/remixdesktop/test/tests/app/compiler.test.ts +++ b/apps/remixdesktop/test/tests/app/compiler.test.ts @@ -8,7 +8,7 @@ module.exports = { }, 'download compiler': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .clickLaunchIcon('solidity') .pause(1000) .setSolidityCompilerVersion('soljson-v0.8.23+commit.f704f362.js') @@ -16,7 +16,7 @@ module.exports = { selector: "//*[@data-id='selectedVersion' and contains(.,'0.8.23+commit.f704f362')]", locateStrategy: 'xpath' }) - .waitForElementContainsText('*[data-id="terminalJournal"]', 'Compiler downloaded from https://binaries.soliditylang.org/wasm/soljson-v0.8.23+commit.f704f362.js to soljson-v0.8.23+commit.f704f362.js', 10000) + .waitForElementContainsText('*[data-id="terminalJournal"]', 'Compiler downloaded from https://binaries.soliditylang.org/wasm/soljson-v0.8.23+commit.f704f362.js to soljson-v0.8.23+commit.f704f362.js', 60000) .waitForElementPresent({ selector: "//a[@data-id='dropdown-item-soljson-v0.8.23+commit.f704f362.js']//*[contains(@class, 'fa-arrow-circle-down')]", diff --git a/apps/remixdesktop/test/tests/app/externaleditor.test.ts b/apps/remixdesktop/test/tests/app/externaleditor.test.ts index a52ad2bec28..206dd7decf3 100644 --- a/apps/remixdesktop/test/tests/app/externaleditor.test.ts +++ b/apps/remixdesktop/test/tests/app/externaleditor.test.ts @@ -6,26 +6,26 @@ const testsBash = { done() }, open: function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="openFolderButton"]', 10000).click('*[data-id="openFolderButton"]') + browser.waitForElementVisible('*[data-id="openFolderButton"]', 60000).click('*[data-id="openFolderButton"]') }, 'open xterm linux and create a file': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="tabXTerm"]', 10000) + .waitForElementVisible('*[data-id="tabXTerm"]', 60000) .click('*[data-id="tabXTerm"]') - .waitForElementVisible('*[data-type="remixUIXT"]', 10000) + .waitForElementVisible('*[data-type="remixUIXT"]', 60000) .click('*[data-type="remixUIXT"]') .perform(function () { const actions = this.actions({async: true}) return actions.sendKeys('mkdir dir && cd dir && echo "test" >> example.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir"]', 60000) .openFile('dir') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir/example.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir/example.txt"]', 60000) .openFile('dir/example.txt') .getEditorValue((result) => { browser.assert.equal(result, 'test\n') }) - .waitForElementVisible('*[data-type="remixUIXT"]', 10000) + .waitForElementVisible('*[data-type="remixUIXT"]', 60000) .click('*[data-type="remixUIXT"]') .perform(function () { const actions = this.actions({async: true}) @@ -62,18 +62,18 @@ const testsWindows = { done() }, open: function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="openFolderButton"]', 10000).click('*[data-id="openFolderButton"]') + browser.waitForElementVisible('*[data-id="openFolderButton"]', 60000).click('*[data-id="openFolderButton"]') }, 'open xterm window and create a file': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="tabXTerm"]', 10000) + .waitForElementVisible('*[data-id="tabXTerm"]', 60000) .click('*[data-id="tabXTerm"]') .waitForElementVisible('*[data-id="select_shell"]') .click('*[data-id="select_shell"]') .waitForElementVisible('*[data-id="select_powershell.exe"]') .click('*[data-id="select_powershell.exe"]') .pause(3000) - .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 10000) + .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 60000) .click("[data-active='1'][data-type='remixUIXT']") .pause(1000) .perform(function () { @@ -81,15 +81,15 @@ const testsWindows = { return actions.sendKeys('New-Item -ItemType Directory -Name "dir" ; Set-Location -Path "./dir" ; Add-Content -Path "example.txt" -Value "test" -Encoding UTF8').sendKeys(this.Keys.ENTER) }) .pause(1000) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir"]', 60000) .openFile('dir') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir/example.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemdir/example.txt"]', 60000) .openFile('dir/example.txt').pause(1000) .getEditorValue((result) => { browser.assert.equal(result, 'test\r\n') }) .pause(1000) - .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 10000) + .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 60000) .click("[data-active='1'][data-type='remixUIXT']") .perform(function () { const actions = this.actions({async: true}) diff --git a/apps/remixdesktop/test/tests/app/foundry.test.ts b/apps/remixdesktop/test/tests/app/foundry.test.ts index 4885c613532..6f380d9ff2b 100644 --- a/apps/remixdesktop/test/tests/app/foundry.test.ts +++ b/apps/remixdesktop/test/tests/app/foundry.test.ts @@ -27,7 +27,7 @@ const tests = { }, [dir], () => { console.log('done window opened') }) - .waitForElementVisible('*[data-id="treeViewDivDraggableItemfoundry.toml"]', 10000) + .waitForElementVisible('*[data-id="treeViewDivDraggableItemfoundry.toml"]', 60000) }, compile: function (browser: NightwatchBrowser) { browser.perform(async (done) => { diff --git a/apps/remixdesktop/test/tests/app/gist.test.ts b/apps/remixdesktop/test/tests/app/gist.test.ts index b53c741910b..148ae38d890 100644 --- a/apps/remixdesktop/test/tests/app/gist.test.ts +++ b/apps/remixdesktop/test/tests/app/gist.test.ts @@ -9,7 +9,7 @@ const tests = { browser.end() /* browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="landingPageImportFromGist"]') .click('*[data-id="landingPageImportFromGist"]') .waitForElementVisible('*[data-id="gisthandlerModalDialogModalBody-react"] input[data-id="modalDialogCustomPromp"]') diff --git a/apps/remixdesktop/test/tests/app/git.test.ts b/apps/remixdesktop/test/tests/app/git.test.ts index 87e5a0a4a53..c9ac49edcff 100644 --- a/apps/remixdesktop/test/tests/app/git.test.ts +++ b/apps/remixdesktop/test/tests/app/git.test.ts @@ -9,7 +9,7 @@ module.exports = { }, 'clone a repo': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="cloneFromGitButton"]') .click('*[data-id="cloneFromGitButton"]') .pause(1000) diff --git a/apps/remixdesktop/test/tests/app/github.test.ts b/apps/remixdesktop/test/tests/app/github.test.ts index bb99f2b440d..45c3199e33a 100644 --- a/apps/remixdesktop/test/tests/app/github.test.ts +++ b/apps/remixdesktop/test/tests/app/github.test.ts @@ -8,7 +8,7 @@ const tests = { 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') @@ -154,9 +154,7 @@ const tests = { }) .waitForElementVisible({ selector: '//*[@data-id="remotes-panel-content"]//*[@data-id="branches-branch-links"]', - locateStrategy: 'xpath', - timeout: 10000 - }) + locateStrategy: 'xpath', timeout: 60000 }) }, 'check the commits of branch links #group1': function (browser: NightwatchBrowser) { diff --git a/apps/remixdesktop/test/tests/app/github_2.test.ts b/apps/remixdesktop/test/tests/app/github_2.test.ts index 460a6c784a8..82339c2a436 100644 --- a/apps/remixdesktop/test/tests/app/github_2.test.ts +++ b/apps/remixdesktop/test/tests/app/github_2.test.ts @@ -8,7 +8,7 @@ const tests = { 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') diff --git a/apps/remixdesktop/test/tests/app/github_3.test.ts b/apps/remixdesktop/test/tests/app/github_3.test.ts index 978f5cdf548..f07013c119e 100644 --- a/apps/remixdesktop/test/tests/app/github_3.test.ts +++ b/apps/remixdesktop/test/tests/app/github_3.test.ts @@ -11,7 +11,7 @@ const tests = { 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') diff --git a/apps/remixdesktop/test/tests/app/hardhat.test.ts b/apps/remixdesktop/test/tests/app/hardhat.test.ts index 4046bb9839a..9ba10e03e2e 100644 --- a/apps/remixdesktop/test/tests/app/hardhat.test.ts +++ b/apps/remixdesktop/test/tests/app/hardhat.test.ts @@ -24,7 +24,7 @@ const tests = { }, [dir], () => { console.log('done window opened') }) - .waitForElementVisible('*[data-id="treeViewDivDraggableItemhardhat.config.js"]', 10000) + .waitForElementVisible('*[data-id="treeViewDivDraggableItemhardhat.config.js"]', 60000) }, compile: function (browser: NightwatchBrowser) { browser.perform(async (done) => { diff --git a/apps/remixdesktop/test/tests/app/metamask.test.ts b/apps/remixdesktop/test/tests/app/metamask.test.ts index 811ad50fa76..605433bb8a7 100644 --- a/apps/remixdesktop/test/tests/app/metamask.test.ts +++ b/apps/remixdesktop/test/tests/app/metamask.test.ts @@ -7,7 +7,7 @@ const tests = { }, 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') @@ -23,7 +23,7 @@ const tests = { .click('*[data-id="treeViewLitreeViewItemcontracts"]') .waitForElementVisible('[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('function retrieve() public view returns (uint256){')) }) @@ -44,14 +44,14 @@ const tests = { .click('*[data-id="compilerContainerCompileBtn"]') .pause(2000) .clickLaunchIcon('udapp') - .waitForElementVisible('*[data-id="Deploy - transact (not payable)"]', 45000) // wait for the contract to compile + .waitForElementVisible('*[data-id="Deploy - transact (not payable)"]', 60000) // wait for the contract to compile .pause(2000) .click('*[data-id="Deploy - transact (not payable)"]') .waitForElementPresent('*[data-id="universalDappUiContractActionWrapper"]', 60000) .clickInstance(0) .clickFunction('store - transact (not payable)', { types: 'uint256 num', values: '10' }) .clickFunction('retrieve - call') - .waitForElementContainsText('[data-id="treeViewLi0"]', 'uint256: 10') + .waitForElementContainsText('[data-id="treeViewLi0"]', 'uint256: 10', 60000) }, } diff --git a/apps/remixdesktop/test/tests/app/offline.test.ts b/apps/remixdesktop/test/tests/app/offline.test.ts index 5ab1c9e54c4..54378a7c64f 100644 --- a/apps/remixdesktop/test/tests/app/offline.test.ts +++ b/apps/remixdesktop/test/tests/app/offline.test.ts @@ -9,7 +9,7 @@ module.exports = { }, 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') @@ -25,7 +25,7 @@ module.exports = { .click('*[data-id="treeViewLitreeViewItemcontracts"]') .waitForElementVisible('[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('function retrieve() public view returns (uint256){')) }) diff --git a/apps/remixdesktop/test/tests/app/search.test.ts b/apps/remixdesktop/test/tests/app/search.test.ts index fff40cd706b..e2d8ac816ca 100644 --- a/apps/remixdesktop/test/tests/app/search.test.ts +++ b/apps/remixdesktop/test/tests/app/search.test.ts @@ -8,7 +8,7 @@ module.exports = { }, 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') @@ -25,7 +25,7 @@ module.exports = { .click('*[data-id="treeViewLitreeViewItemcontracts"]') .waitForElementVisible('[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('function retrieve() public view returns (uint256){')) }) @@ -43,11 +43,11 @@ module.exports = { .waitForElementContainsText('*[data-id="search_results"]', '3_BALLOT.SOL', 60000) .waitForElementContainsText('*[data-id="search_results"]', 'contracts', 60000) .waitForElementContainsText('*[data-id="search_results"]', 'README.TXT', 60000) - .waitForElementContainsText('*[data-id="search_results"]', 'file must') - .waitForElementContainsText('*[data-id="search_results"]', 'be compiled') - .waitForElementContainsText('*[data-id="search_results"]', 'that person al') - .waitForElementContainsText('*[data-id="search_results"]', 'sender.voted') - .waitForElementContainsText('*[data-id="search_results"]', 'read') + .waitForElementContainsText('*[data-id="search_results"]', 'file must', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'be compiled', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'that person al', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'sender.voted', 60000) + .waitForElementContainsText('*[data-id="search_results"]', 'read', 60000) .elements('css selector', '.search_plugin_search_line', (res) => { Array.isArray(res.value) && browser.assert.equal(res.value.length, 7) }) diff --git a/apps/remixdesktop/test/tests/app/slitherlinux.test.ts b/apps/remixdesktop/test/tests/app/slitherlinux.test.ts index 5c7252ddae1..f5da8d953da 100644 --- a/apps/remixdesktop/test/tests/app/slitherlinux.test.ts +++ b/apps/remixdesktop/test/tests/app/slitherlinux.test.ts @@ -7,12 +7,12 @@ const tests = { done() }, open: function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="openFolderButton"]', 10000).click('*[data-id="openFolderButton"]') + browser.waitForElementVisible('*[data-id="openFolderButton"]', 60000).click('*[data-id="openFolderButton"]') }, 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('button[data-id="landingPageImportFromTemplate"]') .click('button[data-id="landingPageImportFromTemplate"]') .waitForElementPresent('*[data-id="create-remixDefault"]') @@ -27,7 +27,7 @@ const tests = { .click('*[data-id="treeViewLitreeViewItemcontracts"]') .waitForElementVisible('[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('function retrieve() public view returns (uint256){')) }) @@ -48,17 +48,13 @@ const tests = { .clickLaunchIcon('solidityStaticAnalysis') .useXpath() .click('//*[@id="staticAnalysisRunBtn"]') - .waitForElementPresent('//*[@id="staticanalysisresult"]', 5000) + .waitForElementPresent('//*[@id="staticanalysisresult"]', 60000) .waitForElementVisible({ selector: "//*[@data-id='nolibslitherwarnings'][contains(text(), '1')]", - locateStrategy: 'xpath', - timeout: 5000 - }) + locateStrategy: 'xpath', timeout: 60000 }) .waitForElementVisible({ selector: "//div[@data-id='block']/span[contains(text(), '1 warnings found.')]", - locateStrategy: 'xpath', - timeout: 5000 - }) + locateStrategy: 'xpath', timeout: 60000 }) }, after: function (browser: NightwatchBrowser) { diff --git a/apps/remixdesktop/test/tests/app/templates.test.ts b/apps/remixdesktop/test/tests/app/templates.test.ts index e9e7c73375e..47802e9f984 100644 --- a/apps/remixdesktop/test/tests/app/templates.test.ts +++ b/apps/remixdesktop/test/tests/app/templates.test.ts @@ -7,7 +7,7 @@ module.exports = { }, 'open default template': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 10000) + .waitForElementVisible('*[data-id="remixIdeIconPanel"]', 60000) .waitForElementVisible('*[data-id="createWorkspaceButton"]') .click('*[data-id="createWorkspaceButton"]') .waitForElementPresent('*[data-id="create-remixDefault"]') @@ -22,7 +22,7 @@ module.exports = { .click('*[data-id="treeViewLitreeViewItemcontracts"]') .waitForElementVisible('[data-id="treeViewLitreeViewItemcontracts/1_Storage.sol"]') .openFile('contracts/1_Storage.sol') - .waitForElementVisible('*[id="editorView"]', 10000) + .waitForElementVisible('*[id="editorView"]', 60000) .getEditorValue((content) => { browser.assert.ok(content.includes('function retrieve() public view returns (uint256){')) }) @@ -30,7 +30,7 @@ module.exports = { }, 'open template explorer and add template to current': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="workspacesSelect"]', 10000) + .waitForElementVisible('*[data-id="workspacesSelect"]', 60000) .click('*[data-id="workspacesSelect"]') .waitForElementVisible('*[data-id="workspacecreate.desktop"]') .click('*[data-id="workspacecreate.desktop"]') diff --git a/apps/remixdesktop/test/tests/app/xterm.test.ts b/apps/remixdesktop/test/tests/app/xterm.test.ts index 2696d885b34..8e043bc32be 100644 --- a/apps/remixdesktop/test/tests/app/xterm.test.ts +++ b/apps/remixdesktop/test/tests/app/xterm.test.ts @@ -9,19 +9,19 @@ const tests = { done() }, open: function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="openFolderButton"]', 10000).click('*[data-id="openFolderButton"]') + browser.waitForElementVisible('*[data-id="openFolderButton"]', 60000).click('*[data-id="openFolderButton"]') }, 'open xterm linux and create a file': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="tabXTerm"]', 10000) + .waitForElementVisible('*[data-id="tabXTerm"]', 60000) .click('*[data-id="tabXTerm"]') - .waitForElementVisible('*[data-type="remixUIXT"]', 10000) + .waitForElementVisible('*[data-type="remixUIXT"]', 60000) .click('*[data-type="remixUIXT"]') .perform(function () { const actions = this.actions({async: true}) return actions.sendKeys('echo test > example.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemexample.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemexample.txt"]', 60000) }, 'rename that file': function (browser: NightwatchBrowser) { browser @@ -29,7 +29,7 @@ const tests = { const actions = this.actions({async: true}) return actions.sendKeys('mv example.txt newExample.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample.txt"]', 60000) }, 'create a file and delete it': function (browser: NightwatchBrowser) { browser @@ -37,12 +37,12 @@ const tests = { const actions = this.actions({async: true}) return actions.sendKeys('touch newExample2.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 60000) .perform(function () { const actions = this.actions({async: true}) return actions.sendKeys('rm newExample2.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 10000) + .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 60000) }, 'run a git clone command': function (browser: NightwatchBrowser) { browser @@ -50,19 +50,19 @@ const tests = { const actions = this.actions({async: true}) return actions.sendKeys('git clone https://github.com/ethereum/awesome-remix').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix"]', 60000) .click('*[data-id="treeViewLitreeViewItemawesome-remix"]') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix/README.md"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix/README.md"]', 60000) }, 'remove the cloned repo': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-type="remixUIXT"]', 10000) + .waitForElementVisible('*[data-type="remixUIXT"]', 60000) .click('*[data-type="remixUIXT"]') .perform(function () { const actions = this.actions({async: true}) return actions.sendKeys('rm -rf awesome-remix').sendKeys(this.Keys.ENTER) }) - .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemawesome-remix"]', 10000) + .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemawesome-remix"]', 60000) }, 'list files': function (browser: NightwatchBrowser) { browser @@ -95,7 +95,7 @@ const tests = { }, 'switch to a new terminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="createTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="createTerminalButton"]', 60000) .click('*[data-id="createTerminalButton"]') .elements('css selector', '[data-type="remixUIXTSideButton"]', function (result) { browser.assert.ok((result.value as any).length === 2) @@ -114,7 +114,7 @@ const tests = { }, 'switch to a third terminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="createTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="createTerminalButton"]', 60000) .click('*[data-id="createTerminalButton"]') .waitForElementVisible( { @@ -156,7 +156,7 @@ const tests = { }, 'close the second terminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="closeTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="closeTerminalButton"]', 60000) .click('*[data-id="closeTerminalButton"]') .elements('css selector', '[data-type="remixUIXTSideButton"]', function (result) { browser.assert.ok((result.value as any).length === 2) @@ -180,13 +180,13 @@ const tests = { ) }, 'switch to the output panel': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="tabOutput"]', 10000).click('*[data-id="tabOutput"]').waitForElementNotPresent('*[data-id="createTerminalButton"]', 10000) + browser.waitForElementVisible('*[data-id="tabOutput"]', 60000).click('*[data-id="tabOutput"]').waitForElementNotPresent('*[data-id="createTerminalButton"]', 60000) }, 'switch back to xterminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="tabXTerm"]', 10000) + .waitForElementVisible('*[data-id="tabXTerm"]', 60000) .click('*[data-id="tabXTerm"]') - .waitForElementVisible('*[data-type="remixUIXT"]', 10000) + .waitForElementVisible('*[data-type="remixUIXT"]', 60000) .click('*[data-type="remixUIXT"]') .getText( { @@ -203,7 +203,7 @@ const tests = { 'clear the terminal and type exit': function (browser: NightwatchBrowser) { browser .pause(1000) - .waitForElementVisible('*[data-id="clearTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="clearTerminalButton"]', 60000) .click('*[data-id="clearTerminalButton"]') .getText( { diff --git a/apps/remixdesktop/test/tests/app/xtermwin.test.ts b/apps/remixdesktop/test/tests/app/xtermwin.test.ts index e822aa3b159..ce8ae45ba3a 100644 --- a/apps/remixdesktop/test/tests/app/xtermwin.test.ts +++ b/apps/remixdesktop/test/tests/app/xtermwin.test.ts @@ -6,25 +6,25 @@ const tests = { done() }, open: function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="openFolderButton"]', 10000).click('*[data-id="openFolderButton"]') + browser.waitForElementVisible('*[data-id="openFolderButton"]', 60000).click('*[data-id="openFolderButton"]') }, 'open xterm window and create a file': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="tabXTerm"]', 10000) + .waitForElementVisible('*[data-id="tabXTerm"]', 60000) .click('*[data-id="tabXTerm"]') .waitForElementVisible('*[data-id="select_shell"]') .click('*[data-id="select_shell"]') .waitForElementVisible('*[data-id="select_powershell.exe"]') .click('*[data-id="select_powershell.exe"]') .pause(3000) - .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 10000) + .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 60000) .click("[data-active='1'][data-type='remixUIXT']") .pause(1000) .perform(function () { const actions = this.actions({ async: true }) return actions.sendKeys('"test" | Out-File -FilePath example.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemexample.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemexample.txt"]', 60000) }, 'rename that file': function (browser: NightwatchBrowser) { browser @@ -32,7 +32,7 @@ const tests = { const actions = this.actions({ async: true }) return actions.sendKeys('Move-Item -Path example.txt -Destination newExample.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample.txt"]', 60000) }, 'create a file and delete it': function (browser: NightwatchBrowser) { browser @@ -40,12 +40,12 @@ const tests = { const actions = this.actions({ async: true }) return actions.sendKeys('touch newExample2.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 60000) .perform(function () { const actions = this.actions({ async: true }) return actions.sendKeys('Remove-Item -Path newExample2.txt').sendKeys(this.Keys.ENTER) }) - .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 10000) + .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemnewExample2.txt"]', 60000) }, 'run a git clone command': function (browser: NightwatchBrowser) { browser @@ -53,24 +53,24 @@ const tests = { const actions = this.actions({ async: true }) return actions.sendKeys('git clone https://github.com/ethereum/awesome-remix').sendKeys(this.Keys.ENTER) }) - .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix"]', 60000) .click('*[data-id="treeViewLitreeViewItemawesome-remix"]') - .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix/README.md"]', 10000) + .waitForElementVisible('*[data-id="treeViewLitreeViewItemawesome-remix/README.md"]', 60000) }, 'remove the cloned repo': function (browser: NightwatchBrowser) { browser - .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 10000) + .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 60000) .click("[data-active='1'][data-type='remixUIXT']") .perform(function () { const actions = this.actions({ async: true }) return actions.sendKeys('Remove-Item -Path awesome-remix -Recurse -Force').sendKeys(this.Keys.ENTER) }) - .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemawesome-remix"]', 10000) + .waitForElementNotPresent('*[data-id="treeViewLitreeViewItemawesome-remix"]', 60000) }, 'list files': function (browser: NightwatchBrowser) { browser .pause(3000) - .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 10000) + .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 60000) .click("[data-active='1'][data-type='remixUIXT']") .saveScreenshot('./reports/screenshots/list-files.png') .perform(function () { @@ -166,7 +166,7 @@ const tests = { }, 'close the second terminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="closeTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="closeTerminalButton"]', 60000) .click('*[data-id="closeTerminalButton"]') .pause(1000) .elements('css selector', '[data-type="remixUIXTSideButton"]', function (result) { @@ -191,13 +191,13 @@ const tests = { ) }, 'switch to the output panel': function (browser: NightwatchBrowser) { - browser.waitForElementVisible('*[data-id="tabOutput"]', 10000).click('*[data-id="tabOutput"]').waitForElementNotPresent('*[data-id="createTerminalButton"]', 10000) + browser.waitForElementVisible('*[data-id="tabOutput"]', 60000).click('*[data-id="tabOutput"]').waitForElementNotPresent('*[data-id="createTerminalButton"]', 60000) }, 'switch back to xterminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="tabXTerm"]', 10000) + .waitForElementVisible('*[data-id="tabXTerm"]', 60000) .click('*[data-id="tabXTerm"]') - .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 10000) + .waitForElementVisible("[data-active='1'][data-type='remixUIXT']", 60000) .click("[data-active='1'][data-type='remixUIXT']") .getText( { @@ -213,7 +213,7 @@ const tests = { }, 'clear the terminal': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="clearTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="clearTerminalButton"]', 60000) .click('*[data-id="clearTerminalButton"]') .getText( { @@ -229,7 +229,7 @@ const tests = { }, 'close all terminals': function (browser: NightwatchBrowser) { browser - .waitForElementVisible('*[data-id="closeTerminalButton"]', 10000) + .waitForElementVisible('*[data-id="closeTerminalButton"]', 60000) .click('*[data-id="closeTerminalButton"]') .pause(3000) .click('*[data-id="closeTerminalButton"]') diff --git a/package.json b/package.json index c51101d48f3..9042aca89cd 100644 --- a/package.json +++ b/package.json @@ -410,5 +410,6 @@ "@ethereumjs/util": "^10.0.0", "@ethereumjs/vm": "^10.0.0", "@ethereumjs/binarytree": "^10.0.0" - } + }, + "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" }