Commit 4db645cb authored by Iuri Matias's avatar Iuri Matias

move code and trace code from remix-debug to remix-lib

parent cc0028c1
'use strict'
var EthDebugger = require('./src/Ethdebugger')
var CodeManager = require('./src/code/codeManager')
var BreakpointManager = require('./src/code/breakpointManager')
var StorageViewer = require('./src/storage/storageViewer')
var StorageResolver = require('./src/storage/storageResolver')
var TraceManager = require('./src/trace/traceManager')
var remixLib = require('remix-lib')
var BreakpointManager = remixLib.code.BreakpointManager
/*
Use of breakPointManager :
......@@ -24,16 +24,9 @@ module.exports = {
* @return {Function} _locationToRowConverter - function implemented by editor which return a column/line position for a char source location
*/
BreakpointManager: BreakpointManager,
code: {
CodeManager: CodeManager,
BreakpointManager: BreakpointManager
},
storage: {
StorageViewer: StorageViewer,
StorageResolver: StorageResolver
},
trace: {
TraceManager: TraceManager
}
}
'use strict'
var CodeManager = require('./code/codeManager')
var StorageViewer = require('./storage/storageViewer')
var StorageResolver = require('./storage/storageResolver')
var TraceManager = require('./trace/traceManager')
var SolidityProxy = require('./decoder/solidityProxy')
var stateDecoder = require('./decoder/stateDecoder')
......@@ -11,6 +9,8 @@ var localDecoder = require('./decoder/localDecoder')
var InternalCallTree = require('./decoder/internalCallTree')
var remixLib = require('remix-lib')
var TraceManager = remixLib.trace.traceManager
var CodeManager = remixLib.code.CodeManager
var traceHelper = remixLib.helpers.trace
var init = remixLib.init
var executionContext = remixLib.execution.executionContext
......
'use strict'
var TraceManager = require('../../../src/trace/traceManager')
var CodeManager = require('../../../src/code/codeManager')
var vmCall = require('../vmCall')
var remixLib = require('remix-lib')
var TraceManager = remixLib.trace.TraceManager
var CodeManager = remixLib.code.CodeManager
var traceHelper = remixLib.helpers.trace
var SolidityProxy = require('../../../src/decoder/solidityProxy')
var InternalCallTree = require('../../../src/decoder/internalCallTree')
......
'use strict'
var TraceManager = require('../../../src/trace/traceManager')
var CodeManager = require('../../../src/code/codeManager')
var vmCall = require('../vmCall')
var remixLib = require('remix-lib')
var traceHelper = remixLib.helpers.trace
......@@ -9,6 +7,9 @@ var InternalCallTree = require('../../../src/decoder/internalCallTree')
var EventManager = remixLib.EventManager
var helper = require('./helper')
var TraceManager = remixLib.trace.TraceManager
var CodeManager = remixLib.code.CodeManager
module.exports = function (st, vm, privateKey, contractBytecode, compilationResult, cb) {
vmCall.sendTx(vm, {nonce: 0, privateKey: privateKey}, null, 0, contractBytecode, function (error, txHash) {
if (error) {
......
'use strict'
var TraceManager = require('../../../src/trace/traceManager')
var CodeManager = require('../../../src/code/codeManager')
var vmCall = require('../vmCall')
var remixLib = require('remix-lib')
var traceHelper = remixLib.helpers.trace
......@@ -9,6 +7,9 @@ var InternalCallTree = require('../../../src/decoder/internalCallTree')
var EventManager = remixLib.EventManager
var helper = require('./helper')
var TraceManager = remixLib.trace.TraceManager
var CodeManager = remixLib.code.CodeManager
module.exports = function (st, vm, privateKey, contractBytecode, compilationResult, cb) {
vmCall.sendTx(vm, {nonce: 0, privateKey: privateKey}, null, 0, contractBytecode, function (error, txHash) {
if (error) {
......
'use strict'
var TraceManager = require('../../../src/trace/traceManager')
var CodeManager = require('../../../src/code/codeManager')
var vmCall = require('../vmCall')
var remixLib = require('remix-lib')
var traceHelper = remixLib.helpers.trace
......@@ -9,6 +7,9 @@ var InternalCallTree = require('../../../src/decoder/internalCallTree')
var EventManager = remixLib.EventManager
var helper = require('./helper')
var TraceManager = remixLib.trace.TraceManager
var CodeManager = remixLib.code.CodeManager
module.exports = function (st, vm, privateKey, contractBytecode, compilationResult, cb) {
vmCall.sendTx(vm, {nonce: 0, privateKey: privateKey}, null, 0, contractBytecode, function (error, txHash) {
if (error) {
......
var remixLib = require('remix-lib')
var compilerInput = remixLib.helpers.compiler.compilerInput
var TraceManager = remixLib.trace.TraceManager
var compiler = require('solc')
var stateDecoder = require('../../../src/decoder/stateDecoder')
var vmCall = require('../vmCall')
var TraceManager = require('../../../src/trace/traceManager')
var StorageResolver = require('../../../src/storage/storageResolver')
var StorageViewer = require('../../../src/storage/storageViewer')
......
......@@ -6,16 +6,12 @@ var vmCall = require('./vmCall')
var Debugger = require('../src/Ethdebugger')
var compiler = require('solc')
require('./traceManager.js')
require('./codeManager.js')
require('./disassembler.js')
require('./decoder/decodeInfo.js')
require('./decoder/storageLocation.js')
require('./decoder/storageDecoder.js')
require('./decoder/localDecoder.js')
var BreakpointManager = require('../src/code/breakpointManager')
var BreakpointManager = remixLib.code.BreakpointManager
tape('debug contract', function (t) {
t.plan(12)
......
......@@ -22,6 +22,10 @@ var txRunner = require('./src/execution/txRunner')
var executionContext = require('./src/execution/execution-context')
var typeConversion = require('./src/execution/typeConversion')
var CodeManager = require('./src/code/codeManager')
var BreakpointManager = require('./src/code/breakpointManager')
var TraceManager = require('./src/trace/traceManager')
if (typeof (module) !== 'undefined' && typeof (module.exports) !== 'undefined') {
module.exports = modules()
}
......@@ -32,6 +36,13 @@ if (typeof (window) !== 'undefined') {
function modules () {
return {
code: {
CodeManager: CodeManager,
BreakpointManager: BreakpointManager
},
trace: {
TraceManager: TraceManager
},
EventManager: EventManager,
helpers: {
trace: traceHelper,
......
......@@ -50,7 +50,8 @@
"node_modules/*",
"build/*",
"test/resources/*"
]
],
"parser": "babel-eslint"
},
"browserify": {
"transform": [
......
'use strict'
var remixLib = require('remix-lib')
var EventManager = remixLib.EventManager
var helper = remixLib.helpers.trace
var EventManager = require('../eventManager')
var helper = require('../helpers/traceHelper')
/**
* allow to manage breakpoint
......
'use strict'
var remixLib = require('remix-lib')
var EventManager = remixLib.EventManager
var traceHelper = remixLib.helpers.trace
var SourceMappingDecoder = remixLib.SourceMappingDecoder
var EventManager = require('../eventManager')
var traceHelper = require('../helpers/traceHelper')
var SourceMappingDecoder = require('../sourceMappingDecoder')
var CodeResolver = require('./codeResolver')
/*
......
'use strict'
var parseCode = require('./codeUtils').parseCode
var remixLib = require('remix-lib')
var util = remixLib.util
var util = require('../util')
var createExpressions = function (instructions) {
var expressions = []
......
'use strict'
var remixLib = require('remix-lib')
var traceHelper = remixLib.helpers.trace
var traceHelper = require('../helpers/traceHelper')
function TraceAnalyser (_cache) {
this.traceCache = _cache
......
'use strict'
var remixLib = require('remix-lib')
var helper = remixLib.util
var helper = require('../util')
function TraceCache () {
this.init()
......
......@@ -3,9 +3,9 @@ var TraceAnalyser = require('./traceAnalyser')
var TraceRetriever = require('./traceRetriever')
var TraceCache = require('./traceCache')
var TraceStepManager = require('./traceStepManager')
var remixLib = require('remix-lib')
var traceHelper = remixLib.helpers.trace
var util = remixLib.util
var traceHelper = require('../helpers/traceHelper')
var util = require('../util')
function TraceManager (options) {
this.web3 = options.web3
......
'use strict'
var remixLib = require('remix-lib')
var traceHelper = remixLib.helpers.trace
var util = remixLib.util
var traceHelper = require('../helpers/traceHelper')
var util = require('../util')
function TraceStepManager (_traceAnalyser) {
this.traceAnalyser = _traceAnalyser
......
'use strict'
var tape = require('tape')
var remixLib = require('remix-lib')
var Web3Providers = remixLib.vm.Web3Providers
var Web3Providers = require('../src/web3Provider/web3Providers')
var TraceManager = require('../src/trace/traceManager')
var CodeManager = require('../src/code/codeManager')
var web3Test = require('./resources/testWeb3')
......
var init = {
overrideWeb3: function (web3, web3Override) {
web3.eth.getCode = web3Override.getCode
web3.debug.traceTransaction = web3Override.traceTransaction
web3.debug.storageRangeAt = web3Override.storageRangeAt
web3.eth.getTransaction = web3Override.getTransaction
web3.eth.getTransactionFromBlock = web3Override.getTransactionFromBlock
web3.eth.getBlockNumber = web3Override.getBlockNumber
},
readFile: function (filename, callback) {
var fs = require('fs')
try {
console.log('reading ' + filename)
if (callback) {
fs.readFile(filename, 'utf8', callback)
} else {
return fs.readFileSync(filename, 'utf8')
}
} catch (e) {
console.log(e)
if (callback) {
callback(e)
} else {
return e
}
}
}
}
module.exports = init
'use strict'
var init = require('../init')
var web3Override = {}
web3Override.eth = {}
web3Override.debug = {}
var data = init.readFile(require('path').resolve(__dirname, 'testWeb3.json'))
data = JSON.parse(data)
web3Override.eth.getCode = function (address, callback) {
if (callback) {
callback(null, data.testCodes[address])
} else {
return data.testCodes[address]
}
}
web3Override.debug.traceTransaction = function (txHash, options, callback) {
callback(null, data.testTraces[txHash])
}
web3Override.debug.storageRangeAt = function (blockNumber, txIndex, address, start, maxSize, callback) {
callback(null, { storage: {}, complete: true })
}
web3Override.eth.getTransaction = function (txHash, callback) {
if (callback) {
callback(null, data.testTxs[txHash])
} else {
return data.testTxs[txHash]
}
}
web3Override.eth.getTransactionFromBlock = function (blockNumber, txIndex, callback) {
if (callback) {
callback(null, data.testTxsByBlock[blockNumber + '-' + txIndex])
} else {
return data.testTxsByBlock[blockNumber + '-' + txIndex]
}
}
web3Override.eth.getBlockNumber = function (callback) { callback('web3 modified testing purposes :)') }
web3Override.eth.setProvider = function (provider) {}
web3Override.eth.providers = { 'HttpProvider': function (url) {} }
web3Override.eth.currentProvider = {'host': 'test provider'}
if (typeof (module) !== 'undefined' && typeof (module.exports) !== 'undefined') {
module.exports = web3Override
}
This diff is collapsed.
......@@ -3,3 +3,7 @@ require('./eventManager.js')
require('./sourceMappingDecoder.js')
require('./util.js')
require('./txFormat.js')
require('./traceManager.js')
require('./codeManager.js')
require('./disassembler.js')
'use strict'
var TraceManager = require('../src/trace/traceManager')
var tape = require('tape')
var remixLib = require('remix-lib')
var Web3Providers = remixLib.vm.Web3Providers
var Web3Providers = require('../src/web3Provider/web3Providers')
var web3Test = require('./resources/testWeb3')
let web3 = null
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment