forked from bcoin-org/bcoin
-
Notifications
You must be signed in to change notification settings - Fork 1
/
node-rpc-test.js
63 lines (51 loc) · 1.18 KB
/
node-rpc-test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/* eslint-env mocha */
/* eslint prefer-arrow-callback: "off" */
'use strict';
const assert = require('bsert');
const FullNode = require('../lib/node/fullnode');
const ports = {
p2p: 49331,
node: 49332,
wallet: 49333
};
const node = new FullNode({
network: 'regtest',
apiKey: 'foo',
walletAuth: true,
memory: true,
workers: true,
workersSize: 2,
plugins: [require('../lib/wallet/plugin')],
port: ports.p2p,
httpPort: ports.node,
env: {
'BCOIN_WALLET_HTTP_PORT': ports.wallet.toString()
}});
const {NodeClient} = require('bclient');
const nclient = new NodeClient({
port: ports.node,
apiKey: 'foo',
timeout: 15000
});
describe('RPC', function() {
this.timeout(15000);
before(async () => {
await node.open();
});
after(async () => {
await node.close();
});
it('should rpc help', async () => {
assert(await nclient.execute('help', []));
await assert.rejects(async () => {
await nclient.execute('help', ['getinfo']);
}, {
name: 'Error',
message: /^getinfo/
});
});
it('should rpc getinfo', async () => {
const info = await nclient.execute('getinfo', []);
assert.strictEqual(info.blocks, 0);
});
});