From 365c5dc6c04d893a621394b3d0808832c61e2b48 Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 06:49:42 +0200 Subject: [PATCH 1/9] Should run a script right --- .circleci/config.yml | 2 +- apps/remix-ide-e2e/src/tests/terminal.test.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 11c6ede82b..cc732d6931 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ version: 2.1 parameters: run_flaky_tests: type: boolean - default: false + default: true orbs: browser-tools: circleci/browser-tools@1.2.3 jobs: diff --git a/apps/remix-ide-e2e/src/tests/terminal.test.ts b/apps/remix-ide-e2e/src/tests/terminal.test.ts index f262005ba1..55031eafcc 100644 --- a/apps/remix-ide-e2e/src/tests/terminal.test.ts +++ b/apps/remix-ide-e2e/src/tests/terminal.test.ts @@ -194,7 +194,7 @@ module.exports = { .assert.visible('*[data-id="autoCompletePopUpAutoCompleteItem"]') }, - 'Should run a script right after compilation #group6': function (browser: NightwatchBrowser) { + 'Should run a script right after compilation #group6 #flaky': function (browser: NightwatchBrowser) { browser .addFile('contracts/storage.sol', { content: scriptAutoExec.contract } ) .addFile('scripts/deploy_storage.js', { content: scriptAutoExec.script } ) From 59483716e7e005f4bf960d909c35aa9041aa43ee Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 07:19:36 +0200 Subject: [PATCH 2/9] add logs --- .../src/commands/getBrowserLogs.ts | 17 +++++++++++++++++ apps/remix-ide-e2e/src/tests/terminal.test.ts | 1 + apps/remix-ide-e2e/src/types/index.d.ts | 1 + 3 files changed, 19 insertions(+) create mode 100644 apps/remix-ide-e2e/src/commands/getBrowserLogs.ts diff --git a/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts b/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts new file mode 100644 index 0000000000..d2e07cb7a4 --- /dev/null +++ b/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts @@ -0,0 +1,17 @@ +import { NightwatchBrowser } from 'nightwatch' +import EventEmitter from 'events' + +class GetBrowserLogs extends EventEmitter { + command(this: NightwatchBrowser): NightwatchBrowser { + this.api.getLog('browser', function (logs) { + logs.forEach(function (log) { + console.log(log) + } + ) + }).perform(() => { + this.emit('complete') + }) + return this + } +} +module.exports = GetBrowserLogs \ No newline at end of file diff --git a/apps/remix-ide-e2e/src/tests/terminal.test.ts b/apps/remix-ide-e2e/src/tests/terminal.test.ts index 55031eafcc..ec271acc9f 100644 --- a/apps/remix-ide-e2e/src/tests/terminal.test.ts +++ b/apps/remix-ide-e2e/src/tests/terminal.test.ts @@ -201,6 +201,7 @@ module.exports = { .openFile('contracts/storage.sol') .sendKeys('body', [browser.Keys.CONTROL, browser.Keys.SHIFT, 's']) .pause(5000) + .getBrowserLogs() .journalLastChildIncludes('147') } } diff --git a/apps/remix-ide-e2e/src/types/index.d.ts b/apps/remix-ide-e2e/src/types/index.d.ts index 9abe5c2174..e8698d4407 100644 --- a/apps/remix-ide-e2e/src/types/index.d.ts +++ b/apps/remix-ide-e2e/src/types/index.d.ts @@ -61,6 +61,7 @@ declare module 'nightwatch' { acceptAndRemember (this: NightwatchBrowser, remember: boolean, accept: boolean): NightwatchBrowser clearConsole (this: NightwatchBrowser): NightwatchBrowser clearTransactions (this: NightwatchBrowser): NightwatchBrowser + getBrowserLogs (this: NightwatchBrowser): NightwatchBrowser currentSelectedFileIs (name: string): NightwatchBrowser } From 73a715faf4541254c3c201e9bcb9a7d106b63434 Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 07:36:54 +0200 Subject: [PATCH 3/9] enable logging --- apps/remix-ide-e2e/nightwatch.ts | 2 +- apps/remix-ide/ci/flaky.sh | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/remix-ide-e2e/nightwatch.ts b/apps/remix-ide-e2e/nightwatch.ts index 7ca74fd2a7..811dfe0aad 100644 --- a/apps/remix-ide-e2e/nightwatch.ts +++ b/apps/remix-ide-e2e/nightwatch.ts @@ -29,7 +29,7 @@ module.exports = { javascriptEnabled: true, acceptSslCerts: true, 'goog:chromeOptions': { - args: ['window-size=2560,1440', 'start-fullscreen', '--no-sandbox', '--headless', '--verbose'] + args: ['window-size=2560,1440', 'start-fullscreen', '--no-sandbox', '--headless', '--verbose', , '--enable-logging=stderr'] } } }, diff --git a/apps/remix-ide/ci/flaky.sh b/apps/remix-ide/ci/flaky.sh index 8a2dac3e73..ecb85727c3 100755 --- a/apps/remix-ide/ci/flaky.sh +++ b/apps/remix-ide/ci/flaky.sh @@ -30,6 +30,8 @@ for TESTFILE in $TESTFILES; do npx nightwatch --config dist/apps/remix-ide-e2e/nightwatch.js $TESTFILE --env=$1 || TEST_EXITCODE=1 done +ls -la ~/.config/google-chrome + echo "$TEST_EXITCODE" if [ "$TEST_EXITCODE" -eq 1 ] then From 90daad42ab3d3e4995847a5a9676f05a373ab378 Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 07:41:47 +0200 Subject: [PATCH 4/9] syntax --- apps/remix-ide-e2e/nightwatch.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/remix-ide-e2e/nightwatch.ts b/apps/remix-ide-e2e/nightwatch.ts index 811dfe0aad..364aca8f09 100644 --- a/apps/remix-ide-e2e/nightwatch.ts +++ b/apps/remix-ide-e2e/nightwatch.ts @@ -29,7 +29,7 @@ module.exports = { javascriptEnabled: true, acceptSslCerts: true, 'goog:chromeOptions': { - args: ['window-size=2560,1440', 'start-fullscreen', '--no-sandbox', '--headless', '--verbose', , '--enable-logging=stderr'] + args: ['window-size=2560,1440', 'start-fullscreen', '--no-sandbox', '--headless', '--verbose', '--enable-logging=stderr'] } } }, From 6a5ebbb6923864dc64cdd752f62b2981587f6639 Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 07:46:59 +0200 Subject: [PATCH 5/9] rm logging --- apps/remix-ide-e2e/nightwatch.ts | 2 +- apps/remix-ide/ci/flaky.sh | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/apps/remix-ide-e2e/nightwatch.ts b/apps/remix-ide-e2e/nightwatch.ts index 364aca8f09..7ca74fd2a7 100644 --- a/apps/remix-ide-e2e/nightwatch.ts +++ b/apps/remix-ide-e2e/nightwatch.ts @@ -29,7 +29,7 @@ module.exports = { javascriptEnabled: true, acceptSslCerts: true, 'goog:chromeOptions': { - args: ['window-size=2560,1440', 'start-fullscreen', '--no-sandbox', '--headless', '--verbose', '--enable-logging=stderr'] + args: ['window-size=2560,1440', 'start-fullscreen', '--no-sandbox', '--headless', '--verbose'] } } }, diff --git a/apps/remix-ide/ci/flaky.sh b/apps/remix-ide/ci/flaky.sh index ecb85727c3..8a2dac3e73 100755 --- a/apps/remix-ide/ci/flaky.sh +++ b/apps/remix-ide/ci/flaky.sh @@ -30,8 +30,6 @@ for TESTFILE in $TESTFILES; do npx nightwatch --config dist/apps/remix-ide-e2e/nightwatch.js $TESTFILE --env=$1 || TEST_EXITCODE=1 done -ls -la ~/.config/google-chrome - echo "$TEST_EXITCODE" if [ "$TEST_EXITCODE" -eq 1 ] then From ee414ce4e1482fdcc007b0e06b74cd04964aa48d Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 09:02:55 +0200 Subject: [PATCH 6/9] update log function --- apps/remix-ide-e2e/src/commands/getBrowserLogs.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts b/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts index d2e07cb7a4..d1da53488a 100644 --- a/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts +++ b/apps/remix-ide-e2e/src/commands/getBrowserLogs.ts @@ -4,10 +4,12 @@ import EventEmitter from 'events' class GetBrowserLogs extends EventEmitter { command(this: NightwatchBrowser): NightwatchBrowser { this.api.getLog('browser', function (logs) { - logs.forEach(function (log) { - console.log(log) + if (logs && Array.isArray(logs)) { + logs.forEach(function (log) { + console.log(log) + } + ) } - ) }).perform(() => { this.emit('complete') }) From da3ede045bca5762e8a635b5de8be60757e6da1f Mon Sep 17 00:00:00 2001 From: filip mertens Date: Thu, 5 May 2022 11:10:28 +0200 Subject: [PATCH 7/9] wait longer --- apps/remix-ide-e2e/src/tests/terminal.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/remix-ide-e2e/src/tests/terminal.test.ts b/apps/remix-ide-e2e/src/tests/terminal.test.ts index ec271acc9f..32c058e827 100644 --- a/apps/remix-ide-e2e/src/tests/terminal.test.ts +++ b/apps/remix-ide-e2e/src/tests/terminal.test.ts @@ -200,7 +200,7 @@ module.exports = { .addFile('scripts/deploy_storage.js', { content: scriptAutoExec.script } ) .openFile('contracts/storage.sol') .sendKeys('body', [browser.Keys.CONTROL, browser.Keys.SHIFT, 's']) - .pause(5000) + .pause(10000) .getBrowserLogs() .journalLastChildIncludes('147') } From db1234e69359d677394962df294454d8a357d4dc Mon Sep 17 00:00:00 2001 From: bunsenstraat Date: Thu, 5 May 2022 12:39:26 +0200 Subject: [PATCH 8/9] Update config.yml --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index cc732d6931..11c6ede82b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ version: 2.1 parameters: run_flaky_tests: type: boolean - default: true + default: false orbs: browser-tools: circleci/browser-tools@1.2.3 jobs: From c6c59f055f476cb44f7c965ee1ebb25505bc14dd Mon Sep 17 00:00:00 2001 From: bunsenstraat Date: Thu, 5 May 2022 12:39:59 +0200 Subject: [PATCH 9/9] Update terminal.test.ts --- apps/remix-ide-e2e/src/tests/terminal.test.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/remix-ide-e2e/src/tests/terminal.test.ts b/apps/remix-ide-e2e/src/tests/terminal.test.ts index 32c058e827..fb828248fe 100644 --- a/apps/remix-ide-e2e/src/tests/terminal.test.ts +++ b/apps/remix-ide-e2e/src/tests/terminal.test.ts @@ -194,14 +194,13 @@ module.exports = { .assert.visible('*[data-id="autoCompletePopUpAutoCompleteItem"]') }, - 'Should run a script right after compilation #group6 #flaky': function (browser: NightwatchBrowser) { + 'Should run a script right after compilation #group6': function (browser: NightwatchBrowser) { browser .addFile('contracts/storage.sol', { content: scriptAutoExec.contract } ) .addFile('scripts/deploy_storage.js', { content: scriptAutoExec.script } ) .openFile('contracts/storage.sol') .sendKeys('body', [browser.Keys.CONTROL, browser.Keys.SHIFT, 's']) - .pause(10000) - .getBrowserLogs() + .pause(15000) .journalLastChildIncludes('147') } } @@ -607,4 +606,4 @@ const scriptAutoExec = { } })() ` -} \ No newline at end of file +}