log transaction error

pull/5370/head
Omkara 6 years ago
parent 67c5852658
commit b4d88db199
  1. 1
      remix-tests/package.json
  2. 12
      remix-tests/src/deployer.js
  3. 2
      remix-tests/src/runTestSources.ts
  4. 6
      remix-tests/src/testRunner.ts
  5. 29
      remix-tests/tests/testRunner.ts

@ -37,6 +37,7 @@
}, },
"homepage": "https://github.com/ethereum/remix-tests#readme", "homepage": "https://github.com/ethereum/remix-tests#readme",
"dependencies": { "dependencies": {
"@types/async": "^2.4.0",
"async": "^2.6.0", "async": "^2.6.0",
"change-case": "^3.0.1", "change-case": "^3.0.1",
"colors": "^1.1.2", "colors": "^1.1.2",

@ -69,7 +69,7 @@ function deployAll (compileResult, web3, callback) {
callback(null, { result: { createdAddress: receipt.contractAddress } }) // TODO this will only work with JavaScriptV VM callback(null, { result: { createdAddress: receipt.contractAddress } }) // TODO this will only work with JavaScriptV VM
}).on('error', function (err) { }).on('error', function (err) {
console.dir(err) console.error(err)
callback(err) callback(err)
}) })
}) })
@ -79,9 +79,13 @@ function deployAll (compileResult, web3, callback) {
let contract = compiledObject[contractName] let contract = compiledObject[contractName]
let encodeDataFinalCallback = (error, contractDeployData) => { let encodeDataFinalCallback = (error, contractDeployData) => {
if (error) return nextEach(error) if (error) return nextEach(error)
let contractObject = new web3.eth.Contract(contract.abi) try {
let deployObject = contractObject.deploy({arguments: [], data: '0x' + contractDeployData.dataHex}) let contractObject = new web3.eth.Contract(contract.abi)
deployRunner(deployObject, contractObject, contractName, contract.filename, (error) => { nextEach(error) }) let deployObject = contractObject.deploy({arguments: [], data: '0x' + contractDeployData.dataHex})
deployRunner(deployObject, contractObject, contractName, contract.filename, (error) => { nextEach(error) })
} catch (e) {
throw e
}
} }
let encodeDataStepCallback = (msg) => { console.dir(msg) } let encodeDataStepCallback = (msg) => { console.dir(msg) }

@ -1,4 +1,4 @@
import async = require('async') import async from 'async'
require('colors') require('colors')
import Compiler = require('./compiler.js') import Compiler = require('./compiler.js')

@ -1,6 +1,6 @@
import async = require('async'); import async from 'async'
import changeCase = require('change-case'); import * as changeCase from 'change-case'
import Web3 = require('web3'); import Web3 from 'web3'
function getFunctionFullName (signature, methodIdentifiers) { function getFunctionFullName (signature, methodIdentifiers) {
for (var method in methodIdentifiers) { for (var method in methodIdentifiers) {

@ -1,35 +1,40 @@
import async = require('async') import async from 'async'
import Web3 = require('web3') import Web3 from 'web3'
import assert = require('assert') import * as assert from 'assert'
import { Provider } from 'remix-simulator'
let Compiler = require('../src/compiler.js') let Compiler = require('../src/compiler.js')
let Deployer = require('../src/deployer.js') let Deployer = require('../src/deployer.js')
let TestRunner = require('../src/testRunner.ts') let TestRunner = require('../src/testRunner.ts')
const Provider = require('remix-simulator').Provider
interface Results { interface Results {
passingNum: number, passingNum: number,
failureNum: number, failureNum: number,
} }
function compileAndDeploy (filename, callback) { function compileAndDeploy (filename: string, callback: Function) {
let web3 = new Web3() let web3 = new Web3()
web3.setProvider(new Provider()) web3.setProvider(new Provider())
let compilationData let compilationData: Object
let accounts let accounts: Object
async.waterfall([ async.waterfall([
function getAccountList (next) { function getAccountList (next: Function) {
web3.eth.getAccounts((_err, _accounts) => { web3.eth.getAccounts((_err: Error, _accounts: Object) => {
accounts = _accounts accounts = _accounts
next(_err) next(_err)
}) })
}, },
function compile (next) { function compile (next: Function) {
Compiler.compileFileOrFiles(filename, false, {accounts}, next) Compiler.compileFileOrFiles(filename, false, {accounts}, next)
}, },
function deployAllContracts (compilationResult, next) { function deployAllContracts (compilationResult, next) {
compilationData = compilationResult try {
Deployer.deployAll(compilationResult, web3, next) compilationData = compilationResult
Deployer.deployAll(compilationResult, web3, next)
next()
} catch(e) {
throw e
}
} }
], function (_err, contracts) { ], function (_err, contracts) {
callback(null, compilationData, contracts, accounts) callback(null, compilationData, contracts, accounts)

Loading…
Cancel
Save