refactor: lint tests, benchmarks, etc.
This commit is contained in:
parent
d3b24da2e1
commit
f70d6b8b45
@ -3,7 +3,8 @@
|
||||
"env": {
|
||||
"browser": true,
|
||||
"es6": true,
|
||||
"node": true
|
||||
"node": true,
|
||||
"mocha": true
|
||||
},
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 8
|
||||
|
||||
@ -2,41 +2,22 @@
|
||||
|
||||
var fs = require('fs');
|
||||
var TX = require('../lib/primitives/tx');
|
||||
var CoinView = require('../lib/coins/coinview');
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
var StaticWriter = require('../lib/utils/staticwriter');
|
||||
var bench = require('./bench');
|
||||
|
||||
var tx3 = parseTX('../test/data/tx3.hex');
|
||||
var wtx = fs.readFileSync(__dirname + '/../test/data/wtx.hex', 'utf8');
|
||||
var i, tx, end, raw;
|
||||
var i, tx, end;
|
||||
|
||||
wtx = Buffer.from(wtx.trim(), 'hex');
|
||||
tx = TX.fromRaw(wtx);
|
||||
|
||||
function parseTX(file) {
|
||||
var data = fs.readFileSync(__dirname + '/' + file, 'utf8');
|
||||
var parts = data.trim().split(/\n+/);
|
||||
var raw = parts[0];
|
||||
var tx = TX.fromRaw(raw.trim(), 'hex');
|
||||
var view = new CoinView();
|
||||
var i, prev;
|
||||
|
||||
for (i = 1; i < parts.length; i++) {
|
||||
raw = parts[i];
|
||||
prev = TX.fromRaw(raw.trim(), 'hex');
|
||||
view.addTX(prev, -1);
|
||||
}
|
||||
|
||||
return { tx: tx, view: view };
|
||||
}
|
||||
|
||||
end = bench('serialize (static-writer)');
|
||||
for (i = 0; i < 10000; i++) {
|
||||
tx._raw = null;
|
||||
tx._size = -1;
|
||||
tx._witness = -1;
|
||||
raw = tx.writeWitness(new StaticWriter(tx.getWitnessSizes().total)).render();
|
||||
tx.writeWitness(new StaticWriter(tx.getWitnessSizes().total)).render();
|
||||
}
|
||||
end(i);
|
||||
|
||||
@ -45,6 +26,6 @@ for (i = 0; i < 10000; i++) {
|
||||
tx._raw = null;
|
||||
tx._size = -1;
|
||||
tx._witness = -1;
|
||||
raw = tx.writeWitness(new BufferWriter()).render();
|
||||
tx.writeWitness(new BufferWriter()).render();
|
||||
}
|
||||
end(i);
|
||||
|
||||
@ -9,31 +9,31 @@ var wtx = fs.readFileSync(__dirname + '/../test/data/wtx.hex', 'utf8');
|
||||
wtx = TX.fromRaw(wtx.trim(), 'hex');
|
||||
|
||||
var coins = Coins.fromTX(wtx);
|
||||
var raw;
|
||||
var i, j, end, raw, hash;
|
||||
|
||||
//raw = coins.toRaw();
|
||||
//console.log(Coins.fromRaw(raw));
|
||||
|
||||
var end = bench('serialize');
|
||||
for (var i = 0; i < 10000; i++)
|
||||
end = bench('serialize');
|
||||
for (i = 0; i < 10000; i++)
|
||||
raw = coins.toRaw();
|
||||
end(i);
|
||||
|
||||
var end = bench('parse');
|
||||
for (var i = 0; i < 10000; i++)
|
||||
end = bench('parse');
|
||||
for (i = 0; i < 10000; i++)
|
||||
Coins.fromRaw(raw);
|
||||
end(i);
|
||||
|
||||
var end = bench('parse-single');
|
||||
var hash = wtx.hash('hex');
|
||||
for (var i = 0; i < 10000; i++)
|
||||
end = bench('parse-single');
|
||||
hash = wtx.hash('hex');
|
||||
for (i = 0; i < 10000; i++)
|
||||
Coins.parseCoin(raw, hash, 5);
|
||||
end(i);
|
||||
|
||||
var coins = Coins.fromRaw(raw);
|
||||
var end = bench('get');
|
||||
var j;
|
||||
coins = Coins.fromRaw(raw);
|
||||
end = bench('get');
|
||||
|
||||
for (var i = 0; i < 10000; i++)
|
||||
for (var j = 0; j < coins.outputs.length; j++)
|
||||
for (i = 0; i < 10000; i++)
|
||||
for (j = 0; j < coins.outputs.length; j++)
|
||||
coins.get(j);
|
||||
end(i * coins.outputs.length);
|
||||
|
||||
@ -6,7 +6,8 @@ var HD = require('../lib/hd');
|
||||
var Mnemonic = require('../lib/hd/mnemonic');
|
||||
|
||||
var mnemonic = new Mnemonic();
|
||||
var key = HD.fromMnemonic(mnemonic);
|
||||
HD.fromMnemonic(mnemonic);
|
||||
|
||||
var phrase = mnemonic.getPhrase();
|
||||
var i, end;
|
||||
|
||||
|
||||
@ -18,7 +18,7 @@ var btx = { tx: block.txs[397], view: new CoinView() };
|
||||
|
||||
var tx3 = parseTX('../test/data/tx3.hex');
|
||||
var wtx = fs.readFileSync(__dirname + '/../test/data/wtx.hex', 'utf8');
|
||||
var i, tx, raw, end, flags, input;
|
||||
var i, tx, end, flags, input;
|
||||
|
||||
wtx = Buffer.from(wtx.trim(), 'hex');
|
||||
|
||||
@ -53,7 +53,7 @@ end(i);
|
||||
end = bench('serialize');
|
||||
for (i = 0; i < 1000; i++) {
|
||||
tx._raw = null;
|
||||
raw = tx.toRaw();
|
||||
tx.toRaw();
|
||||
}
|
||||
end(i);
|
||||
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
'use strict';
|
||||
|
||||
var bench = require('./bench');
|
||||
var co = require('../lib/utils/co');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var WalletDB = require('../lib/wallet/walletdb');
|
||||
var MTX = require('../lib/primitives/mtx');
|
||||
@ -25,8 +24,8 @@ async function runBench() {
|
||||
var result, tx, mtx, options;
|
||||
|
||||
// Open and Create
|
||||
yield walletdb.open();
|
||||
wallet = yield walletdb.create();
|
||||
await walletdb.open();
|
||||
wallet = await walletdb.create();
|
||||
addrs = [];
|
||||
|
||||
// Accounts
|
||||
@ -35,7 +34,7 @@ async function runBench() {
|
||||
jobs.push(wallet.createAccount({}));
|
||||
|
||||
end = bench('accounts');
|
||||
result = yield Promise.all(jobs);
|
||||
result = await Promise.all(jobs);
|
||||
end(1000);
|
||||
|
||||
for (i = 0; i < result.length; i++)
|
||||
@ -49,7 +48,7 @@ async function runBench() {
|
||||
}
|
||||
|
||||
end = bench('keys');
|
||||
result = yield Promise.all(jobs);
|
||||
result = await Promise.all(jobs);
|
||||
end(1000 * 10);
|
||||
|
||||
for (i = 0; i < result.length; i++)
|
||||
@ -70,7 +69,7 @@ async function runBench() {
|
||||
}
|
||||
|
||||
end = bench('deposit');
|
||||
result = yield Promise.all(jobs);
|
||||
result = await Promise.all(jobs);
|
||||
end(10000);
|
||||
|
||||
// TX redemption
|
||||
@ -91,17 +90,17 @@ async function runBench() {
|
||||
}
|
||||
|
||||
end = bench('redemption');
|
||||
result = yield Promise.all(jobs);
|
||||
result = await Promise.all(jobs);
|
||||
end(10000);
|
||||
|
||||
// Balance
|
||||
end = bench('balance');
|
||||
result = yield wallet.getBalance();
|
||||
result = await wallet.getBalance();
|
||||
end(1);
|
||||
|
||||
// Coins
|
||||
end = bench('coins');
|
||||
result = yield wallet.getCoins();
|
||||
result = await wallet.getCoins();
|
||||
end(1);
|
||||
|
||||
// Create
|
||||
@ -113,7 +112,7 @@ async function runBench() {
|
||||
address: addrs[0]
|
||||
}]
|
||||
};
|
||||
yield wallet.createTX(options);
|
||||
await wallet.createTX(options);
|
||||
end(1);
|
||||
}
|
||||
|
||||
|
||||
4
bin/cli
4
bin/cli
@ -4,11 +4,8 @@
|
||||
|
||||
var Config = require('../lib/node/config');
|
||||
var util = require('../lib/utils/util');
|
||||
var co = require('../lib/utils/co');
|
||||
var Client = require('../lib/http/client');
|
||||
var Wallet = require('../lib/http/wallet');
|
||||
var Amount = require('../lib/btc/amount');
|
||||
var main;
|
||||
|
||||
function CLI() {
|
||||
this.config = new Config('bcoin');
|
||||
@ -323,6 +320,7 @@ CLI.prototype.createTX = async function createTX() {
|
||||
CLI.prototype.signTX = async function signTX() {
|
||||
var options = {};
|
||||
var raw = this.config.str(['tx', 0]);
|
||||
var tx;
|
||||
|
||||
options.passphrase = this.config.str('passphrase');
|
||||
|
||||
|
||||
1
bin/node
1
bin/node
@ -21,7 +21,6 @@ if (process.argv.indexOf('--version') !== -1
|
||||
|
||||
var bcoin = require('../');
|
||||
var plugin = require('../lib/wallet/plugin');
|
||||
var co = bcoin.co;
|
||||
var node;
|
||||
|
||||
node = new bcoin.fullnode({
|
||||
|
||||
@ -8,7 +8,6 @@ var assert = require('assert');
|
||||
var bcoin = require('../');
|
||||
var plugin = require('../lib/wallet/plugin');
|
||||
var util = bcoin.util;
|
||||
var co = bcoin.co;
|
||||
var node;
|
||||
|
||||
node = bcoin.spvnode({
|
||||
|
||||
@ -2,13 +2,12 @@
|
||||
|
||||
var encoding = require('bcoin/lib/utils/encoding');
|
||||
var co = require('bcoin/lib/utils/co');
|
||||
var Address = require('bcoin/lib/primitives/address');
|
||||
var Outpoint = require('bcoin/lib/primitives/outpoint');
|
||||
var MTX = require('bcoin/lib/primitives/mtx');
|
||||
var HTTP = require('bcoin/lib/http');
|
||||
var FullNode = require('bcoin/lib/node/fullnode');
|
||||
var plugin = require('bcoin/lib/wallet/plugin');
|
||||
var node, wallet, walletdb, addr, hash;
|
||||
var node, wallet;
|
||||
|
||||
node = new FullNode({
|
||||
network: 'regtest',
|
||||
@ -26,7 +25,7 @@ wallet = new HTTP.Wallet({
|
||||
|
||||
async function main() {
|
||||
var wdb = node.require('walletdb');
|
||||
var w, acct, info, hash, balance, tx;
|
||||
var w, acct, hash, balance, tx;
|
||||
|
||||
await node.open();
|
||||
|
||||
@ -63,7 +62,7 @@ async function main() {
|
||||
}
|
||||
|
||||
async function fundWallet(wdb, addr) {
|
||||
var tx, balance, receive, details;
|
||||
var tx;
|
||||
|
||||
// Coinbase
|
||||
tx = new MTX();
|
||||
|
||||
@ -1,7 +1,6 @@
|
||||
'use strict';
|
||||
|
||||
var bcoin = require('../');
|
||||
var co = bcoin.co;
|
||||
var assert = require('assert');
|
||||
var file = process.argv[2];
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
|
||||
@ -11,7 +11,6 @@ var Coins = require('../lib/coins/coins');
|
||||
var UndoCoins = require('../lib/coins/undocoins');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var Output = require('../lib/primitives/output');
|
||||
var util = require('../lib/utils/util');
|
||||
var LDB = require('../lib/db/ldb');
|
||||
var file = process.argv[2];
|
||||
var options = {};
|
||||
@ -215,15 +214,6 @@ function pair(prefix, hash) {
|
||||
return key;
|
||||
}
|
||||
|
||||
function ipair(prefix, num) {
|
||||
var key = Buffer.allocUnsafe(5);
|
||||
if (typeof prefix === 'string')
|
||||
prefix = prefix.charCodeAt(0);
|
||||
key[0] = prefix;
|
||||
key.writeUInt32BE(num, 1, true);
|
||||
return key;
|
||||
}
|
||||
|
||||
function injectCoin(undo, coin) {
|
||||
var output = new Output();
|
||||
|
||||
|
||||
@ -2,8 +2,6 @@
|
||||
|
||||
var assert = require('assert');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var co = require('../lib/utils/co');
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var util = require('../lib/utils/util');
|
||||
@ -138,15 +136,6 @@ function pair(prefix, hash) {
|
||||
return key;
|
||||
}
|
||||
|
||||
function ipair(prefix, num) {
|
||||
var key = Buffer.allocUnsafe(5);
|
||||
if (typeof prefix === 'string')
|
||||
prefix = prefix.charCodeAt(0);
|
||||
key[0] = prefix;
|
||||
key.writeUInt32BE(num, 1, true);
|
||||
return key;
|
||||
}
|
||||
|
||||
(async function() {
|
||||
await db.open();
|
||||
console.log('Opened %s.', file);
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
'use strict';
|
||||
|
||||
var assert = require('assert');
|
||||
var bcoin = require('../');
|
||||
var walletdb = require('../lib/wallet/walletdb');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
@ -7,12 +8,10 @@ var Path = require('../lib/wallet/path');
|
||||
var MasterKey = require('../lib/wallet/masterkey');
|
||||
var Account = require('../lib/wallet/account');
|
||||
var Wallet = require('../lib/wallet/wallet');
|
||||
var layout = walletdb.layout;
|
||||
var co = bcoin.co;
|
||||
var assert = require('assert');
|
||||
var file = process.argv[2];
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
var layout = walletdb.layout;
|
||||
var file = process.argv[2];
|
||||
var db, batch;
|
||||
|
||||
assert(typeof file === 'string', 'Please pass in a database path.');
|
||||
|
||||
@ -4,15 +4,10 @@ var assert = require('assert');
|
||||
var bcoin = require('../');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var WalletDB = require('../lib/wallet/walletdb');
|
||||
var TXDB = require('../lib/wallet/txdb');
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var TX = require('../lib/primitives/tx');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var util = require('../lib/utils/util');
|
||||
var co = bcoin.co;
|
||||
var layout = WalletDB.layout;
|
||||
var tlayout = TXDB.layout;
|
||||
var file = process.argv[2];
|
||||
var db, batch;
|
||||
|
||||
|
||||
@ -2,10 +2,6 @@
|
||||
|
||||
var assert = require('assert');
|
||||
var bcoin = require('../');
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var util = require('../lib/utils/util');
|
||||
var co = bcoin.co;
|
||||
var file = process.argv[2];
|
||||
var db, batch;
|
||||
|
||||
|
||||
@ -5,8 +5,6 @@ var bcoin = require('../');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var BufferWriter = require('../lib/utils/writer');
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var util = require('../lib/utils/util');
|
||||
var co = bcoin.co;
|
||||
var file = process.argv[2];
|
||||
var db, batch;
|
||||
|
||||
@ -273,8 +271,10 @@ async function unstate() {
|
||||
await patchPathMaps();
|
||||
await batch.write();
|
||||
await db.close();
|
||||
// await updateLookahead();
|
||||
// await unstate();
|
||||
|
||||
// Do not use:
|
||||
await updateLookahead();
|
||||
await unstate();
|
||||
})().then(function() {
|
||||
console.log('Migration complete.');
|
||||
console.log('Rescan is required...');
|
||||
|
||||
@ -62,7 +62,7 @@
|
||||
"browserify": "browserify --im -o browser/bcoin.js lib/bcoin.js && browserify --im -o browser/bcoin-master.js lib/workers/master.js",
|
||||
"uglify": "uglifyjs -m -o browser/bcoin.min.js browser/bcoin.js && uglifyjs -m -o browser/bcoin-master.min.js browser/bcoin-master.js",
|
||||
"clean": "rm browser/bcoin.js browser/bcoin.min.js browser/bcoin-master.js browser/bcoin-master.min.js",
|
||||
"lint": "eslint lib/ || exit 0",
|
||||
"lint": "eslint lib/ test/ migrate/ examples/ bench/ bin/cli bin/node bin/spvnode || exit 0",
|
||||
"docs": "jsdoc -c jsdoc.json"
|
||||
},
|
||||
"browser": {
|
||||
|
||||
@ -243,7 +243,7 @@ describe('Bech32', function() {
|
||||
|
||||
INVALID_ADDRESS.forEach(function(test) {
|
||||
it('should have invalid address for ' + test, function() {
|
||||
var ok1, ok2, ok;
|
||||
var ok1, ok2;
|
||||
|
||||
try {
|
||||
ok1 = Address.fromBech32(test, 'main');
|
||||
@ -257,7 +257,7 @@ describe('Bech32', function() {
|
||||
ok2 = null;
|
||||
}
|
||||
|
||||
assert(!ok2);
|
||||
assert(!ok1 && !ok2);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@ -4,7 +4,6 @@ var assert = require('assert');
|
||||
var BN = require('../lib/crypto/bn');
|
||||
var consensus = require('../lib/protocol/consensus');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var co = require('../lib/utils/co');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var Script = require('../lib/script/script');
|
||||
var Chain = require('../lib/blockchain/chain');
|
||||
@ -770,7 +769,7 @@ describe('Chain', function() {
|
||||
|
||||
it('should mine 111 multisig blocks', async function() {
|
||||
var flags = common.flags.DEFAULT_FLAGS & ~common.flags.VERIFY_POW;
|
||||
var i, j, script, job, cb, output, val, block;
|
||||
var i, j, script, cb, output, val, block;
|
||||
|
||||
script = new Script();
|
||||
script.push(new BN(20));
|
||||
|
||||
@ -1,27 +1,14 @@
|
||||
'use strict';
|
||||
|
||||
var assert = require('assert');
|
||||
var util = require('../lib/utils/util');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var consensus = require('../lib/protocol/consensus');
|
||||
var Network = require('../lib/protocol/network');
|
||||
var TX = require('../lib/primitives/tx');
|
||||
var Block = require('../lib/primitives/block');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var Output = require('../lib/primitives/output');
|
||||
var Script = require('../lib/script/script');
|
||||
var Witness = require('../lib/script/witness');
|
||||
var Input = require('../lib/primitives/input');
|
||||
var Outpoint = require('../lib/primitives/outpoint');
|
||||
var CoinView = require('../lib/coins/coinview');
|
||||
var Coins = require('../lib/coins/coins');
|
||||
var UndoCoins = require('../lib/coins/undocoins');
|
||||
var StaticWriter = require('../lib/utils/staticwriter');
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var KeyRing = require('../lib/primitives/keyring');
|
||||
var parseTX = require('./util/common').parseTX;
|
||||
var opcodes = Script.opcodes;
|
||||
|
||||
var data = parseTX('data/tx1.hex');
|
||||
var tx1 = data.tx;
|
||||
@ -115,7 +102,6 @@ describe('Coins', function() {
|
||||
});
|
||||
|
||||
it('should handle coin view', function() {
|
||||
var hash = tx1.hash('hex');
|
||||
var view = new CoinView();
|
||||
var i, tx, size, bw, br;
|
||||
var raw, res, prev, coins;
|
||||
|
||||
@ -1,9 +1,8 @@
|
||||
'use strict';
|
||||
|
||||
var assert = require('assert');
|
||||
var fs = require('fs');
|
||||
var fs = require('../lib/utils/fs');
|
||||
var GCSFilter = require('../lib/utils/gcs');
|
||||
var util = require('../lib/utils/util');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var Block = require('../lib/primitives/block');
|
||||
var Outpoint = require('../lib/primitives/outpoint');
|
||||
|
||||
@ -225,12 +225,12 @@ describe('HTTP', function() {
|
||||
it('should validate an address', async function() {
|
||||
var json = await wallet.client.rpc.execute('validateaddress', [addr.toString()]);
|
||||
assert.deepStrictEqual(json, {
|
||||
isvalid: true,
|
||||
address: addr.toString(),
|
||||
scriptPubKey: Script.fromAddress(addr).toRaw().toString('hex'),
|
||||
ismine: false,
|
||||
iswatchonly: false
|
||||
});
|
||||
isvalid: true,
|
||||
address: addr.toString(),
|
||||
scriptPubKey: Script.fromAddress(addr).toRaw().toString('hex'),
|
||||
ismine: false,
|
||||
iswatchonly: false
|
||||
});
|
||||
});
|
||||
|
||||
it('should cleanup', async function() {
|
||||
|
||||
@ -3,11 +3,9 @@
|
||||
var assert = require('assert');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var co = require('../lib/utils/co');
|
||||
var MempoolEntry = require('../lib/mempool/mempoolentry');
|
||||
var Mempool = require('../lib/mempool/mempool');
|
||||
var Chain = require('../lib/blockchain/chain');
|
||||
var WalletDB = require('../lib/wallet/walletdb');
|
||||
var MTX = require('../lib/primitives/mtx');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var KeyRing = require('../lib/primitives/keyring');
|
||||
@ -15,9 +13,7 @@ var Address = require('../lib/primitives/address');
|
||||
var Outpoint = require('../lib/primitives/outpoint');
|
||||
var Script = require('../lib/script/script');
|
||||
var Witness = require('../lib/script/witness');
|
||||
var Block = require('../lib/primitives/block');
|
||||
var MemWallet = require('./util/memwallet');
|
||||
var opcodes = Script.opcodes;
|
||||
|
||||
describe('Mempool', function() {
|
||||
var chain = new Chain({ db: 'memory' });
|
||||
@ -334,7 +330,7 @@ describe('Mempool', function() {
|
||||
|
||||
it('should clear reject cache', async function() {
|
||||
var w = wallet;
|
||||
var tx, input;
|
||||
var tx;
|
||||
|
||||
tx = new MTX();
|
||||
tx.addOutpoint(new Outpoint());
|
||||
|
||||
@ -563,12 +563,12 @@ describe('Node', function() {
|
||||
}, {});
|
||||
|
||||
assert.deepStrictEqual(json.result, {
|
||||
isvalid: true,
|
||||
address: addr.toString(),
|
||||
scriptPubKey: Script.fromAddress(addr).toJSON(),
|
||||
ismine: false,
|
||||
iswatchonly: false
|
||||
});
|
||||
isvalid: true,
|
||||
address: addr.toString(),
|
||||
scriptPubKey: Script.fromAddress(addr).toJSON(),
|
||||
ismine: false,
|
||||
iswatchonly: false
|
||||
});
|
||||
});
|
||||
|
||||
it('should add transaction to mempool', async function() {
|
||||
|
||||
@ -1,10 +1,8 @@
|
||||
'use strict';
|
||||
|
||||
var fs = require('fs');
|
||||
var assert = require('assert');
|
||||
var Network = require('../lib/protocol/network');
|
||||
var util = require('../lib/utils/util');
|
||||
var BufferReader = require('../lib/utils/reader');
|
||||
var NetAddress = require('../lib/primitives/netaddress');
|
||||
var TX = require('../lib/primitives/tx');
|
||||
var Framer = require('../lib/net/framer');
|
||||
@ -75,6 +73,7 @@ describe('Protocol', function() {
|
||||
packetTest('verack', new packets.VerackPacket(), function(payload) {
|
||||
});
|
||||
|
||||
/* eslint indent: 0 */
|
||||
hosts = [
|
||||
new NetAddress({
|
||||
services: 1,
|
||||
|
||||
@ -1,14 +1,11 @@
|
||||
'use strict';
|
||||
|
||||
var fs = require('fs');
|
||||
var assert = require('assert');
|
||||
var util = require('../lib/utils/util');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var consensus = require('../lib/protocol/consensus');
|
||||
var Network = require('../lib/protocol/network');
|
||||
var TX = require('../lib/primitives/tx');
|
||||
var Block = require('../lib/primitives/block');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var Output = require('../lib/primitives/output');
|
||||
var Script = require('../lib/script/script');
|
||||
|
||||
@ -15,7 +15,6 @@ var Bloom = require('../../lib/utils/bloom');
|
||||
var KeyRing = require('../../lib/primitives/keyring');
|
||||
var Outpoint = require('../../lib/primitives/outpoint');
|
||||
var Coin = require('../../lib/primitives/coin');
|
||||
var co = require('../../lib/utils/co');
|
||||
|
||||
function MemWallet(options) {
|
||||
if (!(this instanceof MemWallet))
|
||||
@ -292,13 +291,12 @@ MemWallet.prototype.addTX = function addTX(tx, height) {
|
||||
MemWallet.prototype.removeTX = function removeTX(tx, height) {
|
||||
var hash = tx.hash('hex');
|
||||
var result = false;
|
||||
var i, op, coin, input, output;
|
||||
var i, op, coin, input;
|
||||
|
||||
if (!this.map[hash])
|
||||
return false;
|
||||
|
||||
for (i = 0; i < tx.outputs.length; i++) {
|
||||
output = tx.outputs[i];
|
||||
op = Outpoint(hash, i).toKey();
|
||||
coin = this.getCoin(op);
|
||||
|
||||
@ -392,7 +390,6 @@ MemWallet.prototype.sign = function sign(mtx) {
|
||||
|
||||
MemWallet.prototype.create = async function create(options) {
|
||||
var mtx = new MTX(options);
|
||||
var tx;
|
||||
|
||||
await this.fund(mtx, options);
|
||||
|
||||
|
||||
@ -32,7 +32,6 @@ NodeContext.prototype.init = function() {
|
||||
node = new FullNode({
|
||||
network: this.network,
|
||||
db: 'memory',
|
||||
network: 'regtest',
|
||||
logger: new Logger({
|
||||
level: 'debug',
|
||||
file: false,
|
||||
@ -99,10 +98,9 @@ NodeContext.prototype.disconnect = async function disconnect() {
|
||||
await node.disconnect();
|
||||
await co.timeout(1000);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
NodeContext.prototype.startSync = function startSync() {
|
||||
var jobs = [];
|
||||
var i, node;
|
||||
|
||||
for (i = 0; i < this.nodes.length; i++) {
|
||||
@ -114,7 +112,6 @@ NodeContext.prototype.startSync = function startSync() {
|
||||
};
|
||||
|
||||
NodeContext.prototype.stopSync = function stopSync() {
|
||||
var jobs = [];
|
||||
var i, node;
|
||||
|
||||
for (i = 0; i < this.nodes.length; i++) {
|
||||
|
||||
@ -98,7 +98,7 @@ describe('Utils', function() {
|
||||
});
|
||||
|
||||
it('should write/read new varints', function() {
|
||||
var n, b;
|
||||
var b;
|
||||
|
||||
/*
|
||||
* 0: [0x00] 256: [0x81 0x00]
|
||||
@ -109,7 +109,6 @@ describe('Utils', function() {
|
||||
* 2^32: [0x8E 0xFE 0xFE 0xFF 0x00]
|
||||
*/
|
||||
|
||||
n = 0;
|
||||
b = Buffer.allocUnsafe(1);
|
||||
b.fill(0x00);
|
||||
encoding.writeVarint2(b, 0, 0);
|
||||
|
||||
@ -5,13 +5,11 @@ var consensus = require('../lib/protocol/consensus');
|
||||
var util = require('../lib/utils/util');
|
||||
var encoding = require('../lib/utils/encoding');
|
||||
var crypto = require('../lib/crypto/crypto');
|
||||
var co = require('../lib/utils/co');
|
||||
var WalletDB = require('../lib/wallet/walletdb');
|
||||
var Address = require('../lib/primitives/address');
|
||||
var MTX = require('../lib/primitives/mtx');
|
||||
var Coin = require('../lib/primitives/coin');
|
||||
var KeyRing = require('../lib/primitives/keyring');
|
||||
var Address = require('../lib/primitives/address');
|
||||
var Input = require('../lib/primitives/input');
|
||||
var Outpoint = require('../lib/primitives/outpoint');
|
||||
var Script = require('../lib/script/script');
|
||||
@ -169,7 +167,7 @@ describe('Wallet', function() {
|
||||
src = src.toTX();
|
||||
|
||||
tx = new MTX();
|
||||
tx.addTX(src, 0)
|
||||
tx.addTX(src, 0);
|
||||
tx.addOutput(w.getAddress(), 5460);
|
||||
|
||||
maxSize = await tx.estimateSize();
|
||||
@ -451,7 +449,7 @@ describe('Wallet', function() {
|
||||
var view, t1, t2, t3, err;
|
||||
|
||||
// Coinbase
|
||||
t1 = new MTX()
|
||||
t1 = new MTX();
|
||||
t1.addInput(dummy());
|
||||
t1.addOutput(w1.getAddress(), 5460);
|
||||
t1.addOutput(w1.getAddress(), 5460);
|
||||
@ -1107,6 +1105,7 @@ describe('Wallet', function() {
|
||||
err = e;
|
||||
}
|
||||
|
||||
assert(!txs);
|
||||
assert(err);
|
||||
assert.equal(err.message, 'Account not found.');
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user