diff --git a/apps/remix-ide-e2e/src/commands/getLastTransactionHash.ts b/apps/remix-ide-e2e/src/commands/getLastTransactionHash.ts index 91eb663f6c..6f98e2f78d 100644 --- a/apps/remix-ide-e2e/src/commands/getLastTransactionHash.ts +++ b/apps/remix-ide-e2e/src/commands/getLastTransactionHash.ts @@ -21,7 +21,8 @@ function getLastTransactionHash (browser: NightwatchBrowser, callback: (hash: st for (let i = deployedContracts.length - 1; i >= 0; i--) { const current = deployedContracts[i] const attr = current.getAttribute('data-id') - if (attr && attr.replace('block_tx', '').startsWith('0x')) { + // For web3 provider, a contract call simulates a tx hash starting with 'block_txcall' + if (attr && ( attr.replace('block_tx', '').startsWith('0x') || attr.replace('block_txcall', '').startsWith('0x'))) { return attr.replace('block_tx', '') } } diff --git a/apps/remix-ide-e2e/src/tests/ballot.test.ts b/apps/remix-ide-e2e/src/tests/ballot.test.ts index 4a5d5875f6..8499b2775e 100644 --- a/apps/remix-ide-e2e/src/tests/ballot.test.ts +++ b/apps/remix-ide-e2e/src/tests/ballot.test.ts @@ -43,7 +43,7 @@ module.exports = { to: 'Ballot.winnerName() 0x692a70D2e424a56D2C6C27aA97D1a86395877b3A', 'decoded output': { 0: 'bytes32: winnerName_ 0x48656c6c6f20576f726c64210000000000000000000000000000000000000000' } }) - // Test in Udapp UI + // Test in Udapp UI , treeViewDiv0 shows returned value on method click .assert.containsText('*[data-id="treeViewDiv0"]', 'bytes32: winnerName_ 0x48656c6c6f20576f726c64210000000000000000000000000000000000000000') }, @@ -93,16 +93,21 @@ module.exports = { .clickFunction('delegate - transact (not payable)', { types: 'address to', values: '0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c' }) .journalLastChildIncludes('Ballot.delegate(address)') .journalLastChildIncludes('data: 0x5c1...a733c') + }, + + 'Call method from Ballot to check return value using external web3': function (browser: NightwatchBrowser) { + browser .clickFunction('winnerName - call') // Test in terminal + .journalLastChildIncludes('Ballot.winnerName()') .testFunction('last', { 'decoded output': { 0: 'bytes32: winnerName_ 0x48656c6c6f20576f726c64210000000000000000000000000000000000000000' } }) - // Test in Udapp UI + // Test in Udapp UI , treeViewDiv0 shows returned value on method click .assert.containsText('*[data-id="treeViewDiv0"]', 'bytes32: winnerName_ 0x48656c6c6f20576f726c64210000000000000000000000000000000000000000') .end() - } + }, } const localsCheck = {