From 181edf127566196dfe55f801dd11d0ed97fcf0e1 Mon Sep 17 00:00:00 2001 From: yann300 Date: Wed, 18 Aug 2021 17:50:51 +0200 Subject: [PATCH] create solidity web app --- .../src/tests/solidityUnittests.spec.ts | 57 ------------------- .../src/app/tabs/styles/compile-tab-styles.js | 2 +- libs/remix-ui/solidity-compiler/src/index.ts | 1 + .../src/lib/icompiler-api.ts | 28 +++++++++ 4 files changed, 30 insertions(+), 58 deletions(-) create mode 100644 libs/remix-ui/solidity-compiler/src/lib/icompiler-api.ts diff --git a/apps/remix-ide-e2e/src/tests/solidityUnittests.spec.ts b/apps/remix-ide-e2e/src/tests/solidityUnittests.spec.ts index c84fde7c13..bd9eb57f26 100644 --- a/apps/remix-ide-e2e/src/tests/solidityUnittests.spec.ts +++ b/apps/remix-ide-e2e/src/tests/solidityUnittests.spec.ts @@ -158,8 +158,6 @@ module.exports = { .waitForElementVisible('*[data-id="modalDialogCustomPromptTextCreate"]') // eslint-disable-next-line dot-notation .execute(function () { document.querySelector('*[data-id="modalDialogCustomPromptTextCreate"]')['value'] = 'workspace_new' }) - .pause(5000) - .waitForElementPresent('*[data-id="workspacesModalDialogModalDialogModalFooter-react"] .modal-ok') .click('*[data-id="workspacesModalDialogModalDialogModalFooter-react"] .modal-ok') .click('*[data-id="workspacesSelect"] option[value="workspace_new"]') // end of creating @@ -186,33 +184,6 @@ module.exports = { .waitForElementContainsText('#solidityUnittestsOutput', '✓ Check winnin proposal with return value', 60000) }, -<<<<<<< HEAD -<<<<<<< HEAD -======= - 'Solidity Unit tests with hardhat console log': function (browser: NightwatchBrowser) { - browser - .waitForElementPresent('*[data-id="verticalIconsKindfilePanel"]') - .addFile('tests/hhLogs_test.sol', sources[0]['tests/hhLogs_test.sol']) - .clickLaunchIcon('solidityUnitTesting') - .waitForElementVisible('*[id="singleTesttests/4_Ballot_test.sol"]', 60000) - .click('*[id="singleTesttests/4_Ballot_test.sol"]') - .click('#runTestsTabRunAction') - .pause(2000) - .waitForElementVisible('*[data-id="testTabSolidityUnitTestsOutputheader"]', 120000) - .waitForElementPresent('#solidityUnittestsOutput div[class^="testPass"]', 60000) - .waitForElementContainsText('#solidityUnittestsOutput', 'tests/hhLogs_test.sol', 60000) - .assert.containsText('#journal > div:nth-child(2) > span ', 'Before all:') - .assert.containsText('#journal > div:nth-child(2) > span', 'Inside beforeAll') - .assert.containsText('#journal > div:nth-child(3) > span', 'Check sender:') - .assert.containsText('#journal > div:nth-child(3) > span', 'msg.sender is 0x5B38Da6a701c568545dCfcB03FcB875f56beddC4') - .assert.containsText('#journal > div:nth-child(4) > span', 'Check int logs:') - .assert.containsText('#journal > div:nth-child(4) > span', '10 20') - .assert.containsText('#journal > div:nth-child(4) > span', 'Number is 25') - .openFile('tests/hhLogs_test.sol') - .removeFile('tests/hhLogs_test.sol', 'workspace_new') - }, - ->>>>>>> 348f2d6ab (e2e tests for hh logs in SUT plugin) 'Debug failed test using debugger': function (browser: NightwatchBrowser) { browser .waitForElementPresent('*[data-id="verticalIconsKindfilePanel"]') @@ -244,9 +215,6 @@ module.exports = { }, 'Basic Solidity Unit tests with local compiler': function (browser: NightwatchBrowser) { -======= - 'Solidity Unit tests Basic Basic with local compiler': function (browser: NightwatchBrowser) { ->>>>>>> 8da004312 (reset solidityUnitTest.spec) browser .clickLaunchIcon('solidity') .setSolidityCompilerVersion('builtin') @@ -492,31 +460,6 @@ const sources = [ return ballotToTest.winningProposal() == 0; } }` - }, - 'tests/hhLogs_test.sol': { - content: `// SPDX-License-Identifier: GPL-3.0 - - pragma solidity >=0.7.0 <0.9.0; - import "remix_tests.sol"; // this import is automatically injected by Remix. - import "hardhat/console.sol"; - - contract hhLogs { - - function beforeAll () public { - console.log('Inside beforeAll'); - } - - function checkSender () public { - console.log('msg.sender is %s', msg.sender); - Assert.ok(true, "should be true"); - } - - function checkIntLogs () public { - console.log(10,20); - console.log('Number is %d', 25); - Assert.ok(true, "should be true"); - } - }` } } ] diff --git a/apps/remix-ide/src/app/tabs/styles/compile-tab-styles.js b/apps/remix-ide/src/app/tabs/styles/compile-tab-styles.js index 35286b2f80..91bb9ee819 100644 --- a/apps/remix-ide/src/app/tabs/styles/compile-tab-styles.js +++ b/apps/remix-ide/src/app/tabs/styles/compile-tab-styles.js @@ -1,4 +1,4 @@ -const csjs = require('csjs-inject') +var csjs = require('csjs-inject') const css = csjs` .compilerTabView { diff --git a/libs/remix-ui/solidity-compiler/src/index.ts b/libs/remix-ui/solidity-compiler/src/index.ts index 317c79cefa..073b7eeacc 100644 --- a/libs/remix-ui/solidity-compiler/src/index.ts +++ b/libs/remix-ui/solidity-compiler/src/index.ts @@ -1,2 +1,3 @@ export * from './lib/solidity-compiler' export * from './lib/logic' +export * from './lib/icompiler-api' diff --git a/libs/remix-ui/solidity-compiler/src/lib/icompiler-api.ts b/libs/remix-ui/solidity-compiler/src/lib/icompiler-api.ts new file mode 100644 index 0000000000..8ff1df432e --- /dev/null +++ b/libs/remix-ui/solidity-compiler/src/lib/icompiler-api.ts @@ -0,0 +1,28 @@ +export type onCurrentFileChanged = (fileName: string) => void + +export interface ICompilerApi { + contractMap: { + file: string + } | Record + + compileErrors:any + + currentFile: string + configurationSettings: any + setHardHatCompilation(value: boolean): void + setSelectedVersion(version: string): void + getCompilationResult(): any + setCompilerConfig: (settings: any) => void + getParameters: () => any + setParameters: (params) => void + getConfiguration: (name: string) => string + setConfiguration: (name: string, value: string) => void + fileProviderOf: (file: string) => string + getFileManagerMode: () => string + fileExists: (file: string) => Promise + writeFile: (file: string, content: string) => Promise + readFile: (file: string) => Promise + open: (file: string) => void + addExternalFile: (file: string, content: string) => void + onCurrentFileChanged: (listener: onCurrentFileChanged) => void +}