|
|
|
@ -5,20 +5,49 @@ const BN = require('ethereumjs-util').BN |
|
|
|
|
let providerResultStub = {} |
|
|
|
|
|
|
|
|
|
describe('PendingBalanceCalculator', function () { |
|
|
|
|
let nonceTracker |
|
|
|
|
let balanceCalculator |
|
|
|
|
|
|
|
|
|
describe('if you have no pending txs and one ether', function () { |
|
|
|
|
const ether = '0x' + (new BN(String(1e18))).toString(16) |
|
|
|
|
|
|
|
|
|
beforeEach(function () { |
|
|
|
|
nonceTracker = generateBalaneCalcWith([], ether) |
|
|
|
|
balanceCalculator = generateBalaneCalcWith([], ether) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
it('returns the network balance', async function () { |
|
|
|
|
const result = await nonceTracker.getBalance() |
|
|
|
|
const result = await balanceCalculator.getBalance() |
|
|
|
|
assert.equal(result, ether, `gave ${result} needed ${ether}`) |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
describe('if you have a one ether pending tx and one ether', function () { |
|
|
|
|
const ether = '0x' + (new BN(String(1e18))).toString(16) |
|
|
|
|
|
|
|
|
|
beforeEach(function () { |
|
|
|
|
const txGen = new MockTxGen() |
|
|
|
|
pendingTxs = txGen.generate({ |
|
|
|
|
status: 'submitted', |
|
|
|
|
txParams: { |
|
|
|
|
value: ether, |
|
|
|
|
gasPrice: '0x0', |
|
|
|
|
gas: '0x0', |
|
|
|
|
} |
|
|
|
|
}, { count: 1 }) |
|
|
|
|
|
|
|
|
|
balanceCalculator = generateBalaneCalcWith(pendingTxs, ether) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
it('returns the network balance', async function () { |
|
|
|
|
console.log('one') |
|
|
|
|
console.dir(balanceCalculator) |
|
|
|
|
const result = await balanceCalculator.getBalance() |
|
|
|
|
console.log('two') |
|
|
|
|
console.dir(result) |
|
|
|
|
assert.equal(result, '0x0', `gave ${result} needed '0x0'`) |
|
|
|
|
return true |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
function generateBalaneCalcWith (transactions, providerStub = '0x0') { |
|
|
|
|