fix and add test

pull/7/head
yann300 8 years ago
parent c88caade8d
commit e426e784e0
  1. 7
      test/solidity/contracts/intLocal.js
  2. 17
      test/solidity/localDecoder.js

@ -2,8 +2,15 @@
module.exports = { module.exports = {
contract: ` contract: `
contract proxy {
struct testStruct {
int one;
uint two;
}
}
contract intLocal { contract intLocal {
function intLocal () { function intLocal () {
proxy.testStruct memory p;
uint8 ui8 = 130; uint8 ui8 = 130;
uint16 ui16 = 456; uint16 ui16 = 456;
uint32 ui32 = 4356; uint32 ui32 = 4356;

@ -41,11 +41,11 @@ tape('solidity', function (t) {
var callTree = new InternalCallTree(debuggerEvent, traceManager, solidityProxy, codeManager, { includeLocalsVariables: true }) var callTree = new InternalCallTree(debuggerEvent, traceManager, solidityProxy, codeManager, { includeLocalsVariables: true })
callTree.event.register('callTreeReady', (scopes, scopeStarts) => { callTree.event.register('callTreeReady', (scopes, scopeStarts) => {
st.equals(scopeStarts[0], '') st.equals(scopeStarts[0], '')
st.equals(scopeStarts[77], '1') st.equals(scopeStarts[97], '1')
st.equals(scopeStarts[92], '1.1') st.equals(scopeStarts[112], '1.1')
st.equals(scopeStarts[115], '2') st.equals(scopeStarts[135], '2')
st.equals(scopeStarts[134], '3') st.equals(scopeStarts[154], '3')
st.equals(scopeStarts[149], '3.1') st.equals(scopeStarts[169], '3.1')
st.equals(scopes[''].locals['ui8'].type.typeName, 'uint') st.equals(scopes[''].locals['ui8'].type.typeName, 'uint')
st.equals(scopes[''].locals['ui16'].type.typeName, 'uint') st.equals(scopes[''].locals['ui16'].type.typeName, 'uint')
st.equals(scopes[''].locals['ui32'].type.typeName, 'uint') st.equals(scopes[''].locals['ui32'].type.typeName, 'uint')
@ -67,13 +67,14 @@ tape('solidity', function (t) {
st.equals(scopes['3'].locals['ui8'].type.typeName, 'uint') st.equals(scopes['3'].locals['ui8'].type.typeName, 'uint')
st.equals(scopes['3.1'].locals['ui81'].type.typeName, 'uint') st.equals(scopes['3.1'].locals['ui81'].type.typeName, 'uint')
decodeLocal(st, 105, traceManager, callTree, function (locals) { decodeLocal(st, 125, traceManager, callTree, function (locals) {
st.equals(Object.keys(locals).length, 15) st.equals(Object.keys(locals).length, 16)
}) })
decodeLocal(st, 157, traceManager, callTree, function (locals) { decodeLocal(st, 177, traceManager, callTree, function (locals) {
try { try {
st.equals(locals['ui8'], '') st.equals(locals['ui8'], '')
st.equals(Object.keys(locals).length, 1)
} catch (e) { } catch (e) {
st.fail(e.message) st.fail(e.message)
} }

Loading…
Cancel
Save