diff --git a/apps/remix-ide-e2e/src/commands/checkAnnotations.ts b/apps/remix-ide-e2e/src/commands/checkAnnotations.ts index 7e74e66515..e3f9805d55 100644 --- a/apps/remix-ide-e2e/src/commands/checkAnnotations.ts +++ b/apps/remix-ide-e2e/src/commands/checkAnnotations.ts @@ -2,8 +2,8 @@ import EventEmitter from 'events' import {NightwatchBrowser} from 'nightwatch' class checkAnnotations extends EventEmitter { - command(this: NightwatchBrowser, type: string, line: number): NightwatchBrowser { - this.api.assert.containsText(`.glyph-margin-widgets .${type}`, line.toString()).perform(() => this.emit('complete')) + command(this: NightwatchBrowser, type: string): NightwatchBrowser { + this.api.waitForElementPresent(`.glyph-margin-widgets .${type}`).perform(() => this.emit('complete')) return this } } diff --git a/apps/remix-ide-e2e/src/tests/editor.test.ts b/apps/remix-ide-e2e/src/tests/editor.test.ts index 1ef05d953c..39a2a2de74 100644 --- a/apps/remix-ide-e2e/src/tests/editor.test.ts +++ b/apps/remix-ide-e2e/src/tests/editor.test.ts @@ -38,11 +38,11 @@ module.exports = { .setEditorValue(storageContractWithError + 'error') .pause(2000) .waitForElementVisible('.glyph-margin-widgets .fa-exclamation-square', 120000) - .checkAnnotations('fa-exclamation-square', 29) // error + .checkAnnotations('fa-exclamation-square') // error .clickLaunchIcon('udapp') .checkAnnotationsNotPresent('fa-exclamation-square') // error .clickLaunchIcon('solidity') - .checkAnnotations('fa-exclamation-square', 29) // error + .checkAnnotations('fa-exclamation-square') // error }, 'Should minimize and maximize codeblock in editor #group1': diff --git a/apps/remix-ide-e2e/src/types/index.d.ts b/apps/remix-ide-e2e/src/types/index.d.ts index eacb27c9ee..4c356ca76f 100644 --- a/apps/remix-ide-e2e/src/types/index.d.ts +++ b/apps/remix-ide-e2e/src/types/index.d.ts @@ -1,105 +1,105 @@ // Merge custom command types with nightwatch types /* eslint-disable no-use-before-define */ -import { NightwatchBrowser } from 'nightwatch' // eslint-disable-line @typescript-eslint/no-unused-vars -export type callbackCheckVerifyCallReturnValue = (values: string[]) => { message: string, pass: boolean } +import {NightwatchBrowser} from 'nightwatch' // eslint-disable-line @typescript-eslint/no-unused-vars +export type callbackCheckVerifyCallReturnValue = (values: string[]) => {message: string; pass: boolean} declare module 'nightwatch' { - export interface NightwatchCustomCommands { - clickLaunchIcon(icon: string): NightwatchBrowser, - switchBrowserTab(index: number): NightwatchBrowser, - scrollAndClick(target: string): NightwatchBrowser, - scrollInto(target: string): NightwatchBrowser, - testContracts(fileName: string, contractCode: NightwatchContractContent, compiledContractNames: string[]): NightwatchBrowser, - setEditorValue(value: string, callback?: () => void): NightwatchBrowser, - addFile(name: string, content: NightwatchContractContent): NightwatchBrowser, - verifyContracts(compiledContractNames: string[], opts?: { wait: number, version?: string, runs?: string }): NightwatchBrowser, - selectAccount(account?: string): NightwatchBrowser, - clickFunction(fnFullName: string, expectedInput?: NightwatchClickFunctionExpectedInput): NightwatchBrowser, - testFunction(txHash: string, expectedInput: NightwatchTestFunctionExpectedInput): NightwatchBrowser, - goToVMTraceStep(step: number, incr?: number): NightwatchBrowser, - checkVariableDebug(id: string, debugValue: NightwatchCheckVariableDebugValue): NightwatchBrowser, - addAtAddressInstance(address: string, isValidFormat: boolean, isValidChecksum: boolean, isAbi?: boolean): NightwatchBrowser, - modalFooterOKClick(id?: string): NightwatchBrowser, - clickInstance(index: number): NightwatchBrowser, - journalLastChildIncludes(val: string): NightwatchBrowser, - executeScriptInTerminal(script: string): NightwatchBrowser, - clearEditableContent(cssSelector: string): NightwatchBrowser, - journalChildIncludes(val: string, opts = { shouldHaveOnlyOneOccurence: boolean }): NightwatchBrowser, - debugTransaction(index: number): NightwatchBrowser, - checkElementStyle(cssSelector: string, styleProperty: string, expectedResult: string): NightwatchBrowser, - openFile(name: string): NightwatchBrowser, - refreshPage(): NightwatchBrowser, - verifyLoad(): NightwatchBrowser, - renamePath(path: string, newFileName: string, renamedPath: string): NightwatchBrowser, - rightClickCustom(cssSelector: string): NightwatchBrowser, - scrollToLine(line: number): NightwatchBrowser, - waitForElementContainsText(id: string, value: string, timeout?: number): NightwatchBrowser, - getModalBody(callback: (value: string, cb: VoidFunction) => void): NightwatchBrowser, - modalFooterCancelClick(id?: string): NightwatchBrowser, - selectContract(contractName: string): NightwatchBrowser, - createContract(inputParams: string): NightwatchBrowser, - getAddressAtPosition(index: number, cb: (pos: string) => void): NightwatchBrowser, - testConstantFunction(address: string, fnFullName: string, expectedInput: NightwatchTestConstantFunctionExpectedInput | null, expectedOutput: string): NightwatchBrowser, - getEditorValue(callback: (content: string) => void): NightwatchBrowser, - getInstalledPlugins(cb: (plugins: string[]) => void): NightwatchBrowser, - verifyCallReturnValue(address: string, checks: string[] | callbackCheckVerifyCallReturnValue): NightwatchBrowser, - testEditorValue(testvalue: string): NightwatchBrowser, - removeFile(path: string, workspace: string): NightwatchBrowser, - switchBrowserWindow(url: string, windowName: string, cb: (browser: NightwatchBrowser, window?: NightwatchCallbackResult) => void): NightwatchBrowser, - setupMetamask(passphrase: string, password: string): NightwatchBrowser, - signMessage(msg: string, callback: (hash: { value: string }, signature: { value: string }) => void): NightwatchBrowser, - setSolidityCompilerVersion(version: string): NightwatchBrowser, - clickElementAtPosition(cssSelector: string, index: number, opt?: { forceSelectIfUnselected: boolean }): NightwatchBrowser, - notContainsText(cssSelector: string, text: string): NightwatchBrowser, - sendLowLevelTx(address: string, value: string, callData: string): NightwatchBrowser, - journalLastChild(val: string): NightwatchBrowser, - checkTerminalFilter(filter: string, test: string): NightwatchBrowser, - noWorkerErrorFor(version: string): NightwatchBrowser, - validateValueInput(selector: string, valueTosSet: string, expectedValue: string): NightwatchBrowser - checkAnnotations(type: string, line: number): NightwatchBrowser - checkAnnotationsNotPresent(type: string): NightwatchBrowser - getLastTransactionHash(callback: (hash: string) => void) - currentWorkspaceIs(name: string): NightwatchBrowser - addLocalPlugin(this: NightwatchBrowser, profile: Profile & LocationProfile & ExternalProfile): NightwatchBrowser - acceptAndRemember (this: NightwatchBrowser, remember: boolean, accept: boolean): NightwatchBrowser - clearConsole (this: NightwatchBrowser): NightwatchBrowser - clearTransactions (this: NightwatchBrowser): NightwatchBrowser - getBrowserLogs (this: NightwatchBrowser): NightwatchBrowser - currentSelectedFileIs (name: string): NightwatchBrowser, - switchWorkspace: (workspaceName: string) => NightwatchBrowser - switchEnvironment: (provider: string) => NightwatchBrowser - connectToExternalHttpProvider: (url: string, identifier: string) => NightwatchBrowser - } + export interface NightwatchCustomCommands { + clickLaunchIcon(icon: string): NightwatchBrowser + switchBrowserTab(index: number): NightwatchBrowser + scrollAndClick(target: string): NightwatchBrowser + scrollInto(target: string): NightwatchBrowser + testContracts(fileName: string, contractCode: NightwatchContractContent, compiledContractNames: string[]): NightwatchBrowser + setEditorValue(value: string, callback?: () => void): NightwatchBrowser + addFile(name: string, content: NightwatchContractContent): NightwatchBrowser + verifyContracts(compiledContractNames: string[], opts?: {wait: number; version?: string; runs?: string}): NightwatchBrowser + selectAccount(account?: string): NightwatchBrowser + clickFunction(fnFullName: string, expectedInput?: NightwatchClickFunctionExpectedInput): NightwatchBrowser + testFunction(txHash: string, expectedInput: NightwatchTestFunctionExpectedInput): NightwatchBrowser + goToVMTraceStep(step: number, incr?: number): NightwatchBrowser + checkVariableDebug(id: string, debugValue: NightwatchCheckVariableDebugValue): NightwatchBrowser + addAtAddressInstance(address: string, isValidFormat: boolean, isValidChecksum: boolean, isAbi?: boolean): NightwatchBrowser + modalFooterOKClick(id?: string): NightwatchBrowser + clickInstance(index: number): NightwatchBrowser + journalLastChildIncludes(val: string): NightwatchBrowser + executeScriptInTerminal(script: string): NightwatchBrowser + clearEditableContent(cssSelector: string): NightwatchBrowser + journalChildIncludes(val: string, opts = {shouldHaveOnlyOneOccurence: boolean}): NightwatchBrowser + debugTransaction(index: number): NightwatchBrowser + checkElementStyle(cssSelector: string, styleProperty: string, expectedResult: string): NightwatchBrowser + openFile(name: string): NightwatchBrowser + refreshPage(): NightwatchBrowser + verifyLoad(): NightwatchBrowser + renamePath(path: string, newFileName: string, renamedPath: string): NightwatchBrowser + rightClickCustom(cssSelector: string): NightwatchBrowser + scrollToLine(line: number): NightwatchBrowser + waitForElementContainsText(id: string, value: string, timeout?: number): NightwatchBrowser + getModalBody(callback: (value: string, cb: VoidFunction) => void): NightwatchBrowser + modalFooterCancelClick(id?: string): NightwatchBrowser + selectContract(contractName: string): NightwatchBrowser + createContract(inputParams: string): NightwatchBrowser + getAddressAtPosition(index: number, cb: (pos: string) => void): NightwatchBrowser + testConstantFunction(address: string, fnFullName: string, expectedInput: NightwatchTestConstantFunctionExpectedInput | null, expectedOutput: string): NightwatchBrowser + getEditorValue(callback: (content: string) => void): NightwatchBrowser + getInstalledPlugins(cb: (plugins: string[]) => void): NightwatchBrowser + verifyCallReturnValue(address: string, checks: string[] | callbackCheckVerifyCallReturnValue): NightwatchBrowser + testEditorValue(testvalue: string): NightwatchBrowser + removeFile(path: string, workspace: string): NightwatchBrowser + switchBrowserWindow(url: string, windowName: string, cb: (browser: NightwatchBrowser, window?: NightwatchCallbackResult) => void): NightwatchBrowser + setupMetamask(passphrase: string, password: string): NightwatchBrowser + signMessage(msg: string, callback: (hash: {value: string}, signature: {value: string}) => void): NightwatchBrowser + setSolidityCompilerVersion(version: string): NightwatchBrowser + clickElementAtPosition(cssSelector: string, index: number, opt?: {forceSelectIfUnselected: boolean}): NightwatchBrowser + notContainsText(cssSelector: string, text: string): NightwatchBrowser + sendLowLevelTx(address: string, value: string, callData: string): NightwatchBrowser + journalLastChild(val: string): NightwatchBrowser + checkTerminalFilter(filter: string, test: string): NightwatchBrowser + noWorkerErrorFor(version: string): NightwatchBrowser + validateValueInput(selector: string, valueTosSet: string, expectedValue: string): NightwatchBrowser + checkAnnotations(type: string): NightwatchBrowser + checkAnnotationsNotPresent(type: string): NightwatchBrowser + getLastTransactionHash(callback: (hash: string) => void) + currentWorkspaceIs(name: string): NightwatchBrowser + addLocalPlugin(this: NightwatchBrowser, profile: Profile & LocationProfile & ExternalProfile): NightwatchBrowser + acceptAndRemember(this: NightwatchBrowser, remember: boolean, accept: boolean): NightwatchBrowser + clearConsole(this: NightwatchBrowser): NightwatchBrowser + clearTransactions(this: NightwatchBrowser): NightwatchBrowser + getBrowserLogs(this: NightwatchBrowser): NightwatchBrowser + currentSelectedFileIs(name: string): NightwatchBrowser + switchWorkspace: (workspaceName: string) => NightwatchBrowser + switchEnvironment: (provider: string) => NightwatchBrowser + connectToExternalHttpProvider: (url: string, identifier: string) => NightwatchBrowser + } - export interface NightwatchBrowser { - api: this, - emit: (status: string) => void, - fullscreenWindow: (result?: any) => this, - keys(keysToSend: string, callback?: (this: NightwatchAPI, result: NightwatchCallbackResult) => void): NightwatchBrowser, - sendKeys: (selector: string, inputValue: string | string[], callback?: (this: NightwatchAPI, result: NightwatchCallbackResult) => void) => NightwatchBrowser - } + export interface NightwatchBrowser { + api: this + emit: (status: string) => void + fullscreenWindow: (result?: any) => this + keys(keysToSend: string, callback?: (this: NightwatchAPI, result: NightwatchCallbackResult) => void): NightwatchBrowser + sendKeys: (selector: string, inputValue: string | string[], callback?: (this: NightwatchAPI, result: NightwatchCallbackResult) => void) => NightwatchBrowser + } - export interface NightwatchAPI { - keys(keysToSend: string, callback?: (this: NightwatchAPI, result: NightwatchCallbackResult) => void): NightwatchAPI - } + export interface NightwatchAPI { + keys(keysToSend: string, callback?: (this: NightwatchAPI, result: NightwatchCallbackResult) => void): NightwatchAPI + } - export interface NightwatchContractContent { - content: string; - } + export interface NightwatchContractContent { + content: string + } - export interface NightwatchClickFunctionExpectedInput { - types: string, - values: string - } + export interface NightwatchClickFunctionExpectedInput { + types: string + values: string + } - export interface NightwatchTestFunctionExpectedInput { - [key: string]: any - } + export interface NightwatchTestFunctionExpectedInput { + [key: string]: any + } - export interface NightwatchTestConstantFunctionExpectedInput { - types: string, - values: string - } + export interface NightwatchTestConstantFunctionExpectedInput { + types: string + values: string + } - export type NightwatchCheckVariableDebugValue = NightwatchTestFunctionExpectedInput + export type NightwatchCheckVariableDebugValue = NightwatchTestFunctionExpectedInput }