From 71a86d57566e772dbdccd22599de99e9cb5e1852 Mon Sep 17 00:00:00 2001 From: filip mertens Date: Wed, 15 Jan 2025 07:42:16 +0100 Subject: [PATCH] more asserting --- .../src/commands/selectContract.ts | 27 ++++++++----------- apps/remix-ide-e2e/src/tests/terminal.test.ts | 18 ++++++------- 2 files changed, 19 insertions(+), 26 deletions(-) diff --git a/apps/remix-ide-e2e/src/commands/selectContract.ts b/apps/remix-ide-e2e/src/commands/selectContract.ts index d270f8949d..5db4c506f1 100644 --- a/apps/remix-ide-e2e/src/commands/selectContract.ts +++ b/apps/remix-ide-e2e/src/commands/selectContract.ts @@ -1,22 +1,17 @@ -import { NightwatchBrowser } from 'nightwatch' -import EventEmitter from 'events' +import { NightwatchBrowser } from 'nightwatch'; +import EventEmitter from 'events'; -const selector = '.udapp_contractNames' +const selector = '.udapp_contractNames'; class SelectContract extends EventEmitter { - command (this: NightwatchBrowser, contractName: string): NightwatchBrowser { - this.api.waitForElementVisible(selector).perform((done) => { - selectContract(this.api, contractName, () => { - done() - this.emit('complete') - }) - }) - return this + command(this: NightwatchBrowser, contractName: string): NightwatchBrowser { + this.api + .waitForElementVisible(selector) + .waitForElementPresent(`${selector} option[value="${contractName}"]`) + .click(`${selector} option[value="${contractName}"]`) + .perform(() => this.emit('complete')); + return this; } } -function selectContract (browser: NightwatchBrowser, contractName: string, callback: VoidFunction) { - browser.click(`${selector} option[value="${contractName}"]`).perform(() => callback()) -} - -module.exports = SelectContract +module.exports = SelectContract; diff --git a/apps/remix-ide-e2e/src/tests/terminal.test.ts b/apps/remix-ide-e2e/src/tests/terminal.test.ts index 2916e55a15..add4ee2c6b 100644 --- a/apps/remix-ide-e2e/src/tests/terminal.test.ts +++ b/apps/remix-ide-e2e/src/tests/terminal.test.ts @@ -209,18 +209,16 @@ module.exports = { .createContract('') .getAddressAtPosition(0, (address) => { addressRef = address - }) - .perform((done) => { browser.addFile('scripts/test_filtering_event.ts', { content: test_filtering_event.replace('
', addressRef) }) - .perform(() => done()) + .executeScriptInTerminal('remix.execute(\'scripts/test_filtering_event.ts\')') + .pause(1000) + .waitForElementContainsText('*[data-id="terminalJournal"]', '1') + .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"]', 'false') }) - .executeScriptInTerminal('remix.execute(\'scripts/test_filtering_event.ts\')') - .pause(1000) - .waitForElementContainsText('*[data-id="terminalJournal"]', '1') - .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"]', 'false') + }, 'Should display auto-complete menu #group4': function (browser: NightwatchBrowser) {