diff --git a/lib/http/server.js b/lib/http/server.js index 133b90e7..afb19b97 100644 --- a/lib/http/server.js +++ b/lib/http/server.js @@ -378,8 +378,10 @@ HTTPServer.prototype._init = function _init() { enforce(typeof output.address === 'string', 'Address must be a string.'); output.address = Address.fromBase58(output.address); - enforce(output.address.network === this.network, - 'Wrong network for address.'); + if (this.network.type === 'main') { + enforce(output.address.network === this.network, + 'Wrong network for address.'); + } } else if (output.script) { enforce(typeof output.script === 'string', 'Script must be a string.'); diff --git a/lib/mempool/mempool.js b/lib/mempool/mempool.js index 1575a308..33c51da3 100644 --- a/lib/mempool/mempool.js +++ b/lib/mempool/mempool.js @@ -1542,6 +1542,11 @@ Mempool.prototype.fillAllCoins = co(function* fillAllCoins(tx) { hash = input.prevout.hash; index = input.prevout.index; + if (this.options.test) { + if (input.coin) + continue; + } + coin = this.getCoin(hash, index); if (coin) { diff --git a/lib/wallet/wallet.js b/lib/wallet/wallet.js index 6425a020..5d4052e3 100644 --- a/lib/wallet/wallet.js +++ b/lib/wallet/wallet.js @@ -1461,7 +1461,7 @@ Wallet.prototype.createTX = co(function* createTX(options, force) { var outputs = options.outputs; var i, tx, output, total; - assert(Array.isArray(output), 'Outputs must be an array.'); + assert(Array.isArray(outputs), 'Outputs must be an array.'); if (outputs.length === 0) throw new Error('No outputs available.'); diff --git a/test/mempool-test.js b/test/mempool-test.js index 1b2fae7d..c442592d 100644 --- a/test/mempool-test.js +++ b/test/mempool-test.js @@ -8,6 +8,7 @@ var crypto = require('../lib/crypto/crypto'); var assert = require('assert'); var opcodes = constants.opcodes; var cob = require('../lib/utils/co').cob; +var MempoolEntry = require('../lib/mempool/mempoolentry'); function dummy(prev, prevHash) { if (!prevHash) @@ -46,7 +47,8 @@ describe('Mempool', function() { mempool = new bcoin.mempool({ chain: chain, name: 'mempool-test', - db: 'memory' + db: 'memory', + test: true }); walletdb = new bcoin.walletdb({ @@ -80,7 +82,7 @@ describe('Mempool', function() { prev = new bcoin.script([kp.publicKey, opcodes.OP_CHECKSIG]); t1.addInput(dummy(prev)); sig = t1.signature(0, prev, kp.privateKey, 'all', 0); - t1.inputs[0].script = new bcoin.script([sig]), + t1.inputs[0].script = new bcoin.script([sig]); // balance: 51000 yield w.sign(t1);