package: use cb-helloblock for integration tests

This commit is contained in:
Daniel Cousens 2014-12-09 11:54:36 +11:00
parent e6b7f51055
commit 837e0a3564
3 changed files with 17 additions and 21 deletions

View file

@ -54,10 +54,11 @@
"ecurve": "1.0.0" "ecurve": "1.0.0"
}, },
"devDependencies": { "devDependencies": {
"async": "^0.9.0",
"browserify": "^5.12.0", "browserify": "^5.12.0",
"bs58": "^2.0.0", "bs58": "^2.0.0",
"cb-helloblock": "^0.4.7",
"coveralls": "^2.11.2", "coveralls": "^2.11.2",
"helloblock-js": "^0.2.5",
"istanbul": "^0.3.2", "istanbul": "^0.3.2",
"jshint": "^2.5.6", "jshint": "^2.5.6",
"mocha": "^1.21.4", "mocha": "^1.21.4",

View file

@ -1,8 +1,6 @@
var assert = require('assert') var assert = require('assert')
var bitcoin = require('../../') var bitcoin = require('../../')
var helloblock = require('helloblock-js')({ var blockchain = new (require('cb-helloblock'))('testnet')
network: 'testnet'
})
describe('bitcoinjs-lib (advanced)', function() { describe('bitcoinjs-lib (advanced)', function() {
it('can sign a Bitcoin message', function() { it('can sign a Bitcoin message', function() {
@ -27,10 +25,10 @@ describe('bitcoinjs-lib (advanced)', function() {
var key = bitcoin.ECKey.fromWIF("L1uyy5qTuGrVXrmrsvHWHgVzW9kKdrp27wBC7Vs6nZDTF2BRUVwy") var key = bitcoin.ECKey.fromWIF("L1uyy5qTuGrVXrmrsvHWHgVzW9kKdrp27wBC7Vs6nZDTF2BRUVwy")
var address = key.pub.getAddress(bitcoin.networks.testnet).toString() var address = key.pub.getAddress(bitcoin.networks.testnet).toString()
helloblock.faucet.withdraw(address, 2e4, function(err) { blockchain.addresses.__faucetWithdraw(address, 2e4, function(err) {
if (err) return done(err) if (err) return done(err)
helloblock.addresses.getUnspents(address, function(err, _, unspents) { blockchain.addresses.unspents(address, function(err, unspents) {
if (err) return done(err) if (err) return done(err)
// filter small unspents // filter small unspents
@ -44,20 +42,19 @@ describe('bitcoinjs-lib (advanced)', function() {
var data = new Buffer('cafedeadbeef', 'hex') var data = new Buffer('cafedeadbeef', 'hex')
var dataScript = bitcoin.scripts.nullDataOutput(data) var dataScript = bitcoin.scripts.nullDataOutput(data)
tx.addInput(unspent.txHash, unspent.index) tx.addInput(unspent.txId, unspent.vout)
tx.addOutput(dataScript, 1000) tx.addOutput(dataScript, 1000)
tx.sign(0, key) tx.sign(0, key)
helloblock.transactions.propagate(tx.build().toHex(), function(err) { blockchain.transactions.propagate(tx.build().toHex(), function(err) {
if (err) return done(err) if (err) return done(err)
// check that the message was propagated // check that the message was propagated
helloblock.addresses.getTransactions(address, function(err, res, transactions) { blockchain.addresses.transactions(address, function(err, transactions) {
if (err) return done(err) if (err) return done(err)
var transaction = transactions[0] var transaction = bitcoin.Transaction.fromHex(transactions[0].txHex)
var output = transaction.outputs[0] var dataScript2 = transaction.outs[0].script
var dataScript2 = bitcoin.Script.fromHex(output.scriptPubKey)
var data2 = dataScript2.chunks[1] var data2 = dataScript2.chunks[1]
assert.deepEqual(dataScript, dataScript2) assert.deepEqual(dataScript, dataScript2)

View file

@ -1,8 +1,6 @@
var assert = require('assert') var assert = require('assert')
var bitcoin = require('../../') var bitcoin = require('../../')
var helloblock = require('helloblock-js')({ var blockchain = new (require('cb-helloblock'))('testnet')
network: 'testnet'
})
describe('bitcoinjs-lib (multisig)', function() { describe('bitcoinjs-lib (multisig)', function() {
it('can create a 2-of-3 multisig P2SH address', function() { it('can create a 2-of-3 multisig P2SH address', function() {
@ -33,11 +31,11 @@ describe('bitcoinjs-lib (multisig)', function() {
var address = bitcoin.Address.fromOutputScript(scriptPubKey, bitcoin.networks.testnet).toString() var address = bitcoin.Address.fromOutputScript(scriptPubKey, bitcoin.networks.testnet).toString()
// Attempt to send funds to the source address // Attempt to send funds to the source address
helloblock.faucet.withdraw(address, 2e4, function(err) { blockchain.addresses.__faucetWithdraw(address, 2e4, function(err) {
if (err) return done(err) if (err) return done(err)
// get latest unspents from the address // get latest unspents from the address
helloblock.addresses.getUnspents(address, function(err, _, unspents) { blockchain.addresses.unspents(address, function(err, unspents) {
if (err) return done(err) if (err) return done(err)
// filter small unspents // filter small unspents
@ -50,7 +48,7 @@ describe('bitcoinjs-lib (multisig)', function() {
var targetAddress = bitcoin.ECKey.makeRandom().pub.getAddress(bitcoin.networks.testnet).toString() var targetAddress = bitcoin.ECKey.makeRandom().pub.getAddress(bitcoin.networks.testnet).toString()
var txb = new bitcoin.TransactionBuilder() var txb = new bitcoin.TransactionBuilder()
txb.addInput(unspent.txHash, unspent.index) txb.addInput(unspent.txId, unspent.vout)
txb.addOutput(targetAddress, 1e4) txb.addOutput(targetAddress, 1e4)
// sign w/ each private key // sign w/ each private key
@ -59,14 +57,14 @@ describe('bitcoinjs-lib (multisig)', function() {
}) })
// broadcast our transaction // broadcast our transaction
helloblock.transactions.propagate(txb.build().toHex(), function(err) { blockchain.transactions.propagate(txb.build().toHex(), function(err) {
if (err) return done(err) if (err) return done(err)
// check that the funds (1e4 Satoshis) indeed arrived at the intended address // check that the funds (1e4 Satoshis) indeed arrived at the intended address
helloblock.addresses.get(targetAddress, function(err, res, addrInfo) { blockchain.addresses.summary(targetAddress, function(err, result) {
if (err) return done(err) if (err) return done(err)
assert.equal(addrInfo.balance, 1e4) assert.equal(result.balance, 1e4)
done() done()
}) })
}) })