@bitpay-labs/bitcore-wallet-service 11.7.1 → 11.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +1 -0
  2. package/package.json +4 -4
  3. package/src/externalservices/banxa.ts +6 -0
  4. package/src/lib/chain/xrp/index.ts +1 -1
  5. package/src/lib/expressapp.ts +2 -0
  6. package/src/lib/server.ts +32 -3
  7. package/test/integration/helpers.ts +2 -1
  8. package/test/integration/history.test.ts +152 -1
  9. package/test/integration/server.test.ts +91 -0
  10. package/test/txhistory.paging.test.ts +166 -0
  11. package/ts_build/package.json +4 -4
  12. package/ts_build/src/externalservices/banxa.d.ts.map +1 -1
  13. package/ts_build/src/externalservices/banxa.js +4 -0
  14. package/ts_build/src/externalservices/banxa.js.map +1 -1
  15. package/ts_build/src/lib/chain/xrp/index.js +1 -1
  16. package/ts_build/src/lib/chain/xrp/index.js.map +1 -1
  17. package/ts_build/src/lib/expressapp.d.ts.map +1 -1
  18. package/ts_build/src/lib/expressapp.js +2 -0
  19. package/ts_build/src/lib/expressapp.js.map +1 -1
  20. package/ts_build/src/lib/server.d.ts.map +1 -1
  21. package/ts_build/src/lib/server.js +22 -1
  22. package/ts_build/src/lib/server.js.map +1 -1
  23. package/ts_build/test/integration/helpers.d.ts.map +1 -1
  24. package/ts_build/test/integration/helpers.js +2 -1
  25. package/ts_build/test/integration/helpers.js.map +1 -1
  26. package/ts_build/test/integration/history.test.js +130 -0
  27. package/ts_build/test/integration/history.test.js.map +1 -1
  28. package/ts_build/test/integration/server.test.js +76 -0
  29. package/ts_build/test/integration/server.test.js.map +1 -1
  30. package/ts_build/test/txhistory.paging.test.d.ts +2 -0
  31. package/ts_build/test/txhistory.paging.test.d.ts.map +1 -0
  32. package/ts_build/test/txhistory.paging.test.js +162 -0
  33. package/ts_build/test/txhistory.paging.test.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../test/integration/helpers.ts"],"names":[],"mappings":"AA2CA,cAAM,OAAO;IACX,cAAc,SAAoB;IAClC,MAAM,QAAM;IAEN,MAAM,CAAC,EAAE,CAAC,KAAA;;;;;IAiBV,UAAU,CAAC,EAAE,CAAC,KAAA;;;;;IA0Cd,KAAK,CAAC,EAAE,CAAC,KAAA;IAOf,qBAAqB;IAIrB,sBAAsB;IAiBtB,UAAU;IAIV,WAAW,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA;IAO5B,iBAAiB,CAAC,aAAa,KAAA,EAAE,QAAQ,KAAA;IAKnC,aAAa,CAAC,SAAS,KAAA,EAAE,EAAE,CAAC,KAAA;IAkBlC,yBAAyB;IAkDzB,oBAAoB,CAAC,IAAI,KAAA;IAOnB,mBAAmB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,IAAI,CAAC,KAAA,EAAE,EAAE,CAAC,KAAA;;;;;;;IAuE1C,UAAU;IAIV,SAAS,CAAC,GAAG,KAAA;IAQb,YAAY,CAAC,GAAG,KAAA;;;;IAiCV,SAAS,CAAC,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,OAAO,KAAA,EAAE,IAAI,CAAC,KAAA,EAAE,EAAE,CAAC,KAAA;IA4GnD,aAAa,CAAC,IAAI,KAAA;IAKlB,WAAW,CAAC,EAAE,KAAA,EAAE,QAAQ,KAAA,EAAE,GAAG,CAAC,KAAA;IA8B9B,WAAW,CAAC,EAAE,KAAA,EAAE,QAAQ,KAAA,EAAE,GAAG,CAAC,KAAA;IAUxB,aAAa,CAAC,EAAE,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA,EAAE,EAAE,CAAC,KAAA;IAU1C,aAAa,CAAC,MAAM,KAAA,EAAE,IAAI,CAAC,KAAA,EAAE,KAAK,CAAC,KAAA;IA4BnC,mBAAmB,CAAC,eAAe,KAAA,EAAE,OAAO,CAAC,KAAA;IAiB7C,UAAU,CAAC,GAAG,KAAA,EAAE,eAAe,KAAA;IA4C/B,wBAAwB,CAAC,GAAG,KAAA,EAAE,UAAU,KAAA;;;;IAUlC,eAAe,CAAC,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,EAAE,CAAC,KAAA;;;;IAmBjD,kBAAkB,CAAC,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,UAAU,KAAA,EAAE,EAAE,CAAC,KAAA;IAoBxD,gBAAgB,CAAC,KAAK,KAAA;CAiDvB;;AAED,wBAA6B"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../test/integration/helpers.ts"],"names":[],"mappings":"AA2CA,cAAM,OAAO;IACX,cAAc,SAAoB;IAClC,MAAM,QAAM;IAEN,MAAM,CAAC,EAAE,CAAC,KAAA;;;;;IAiBV,UAAU,CAAC,EAAE,CAAC,KAAA;;;;;IA0Cd,KAAK,CAAC,EAAE,CAAC,KAAA;IAOf,qBAAqB;IAIrB,sBAAsB;IAiBtB,UAAU;IAIV,WAAW,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA;IAO5B,iBAAiB,CAAC,aAAa,KAAA,EAAE,QAAQ,KAAA;IAKnC,aAAa,CAAC,SAAS,KAAA,EAAE,EAAE,CAAC,KAAA;IAkBlC,yBAAyB;IAkDzB,oBAAoB,CAAC,IAAI,KAAA;IAOnB,mBAAmB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,IAAI,CAAC,KAAA,EAAE,EAAE,CAAC,KAAA;;;;;;;IAuE1C,UAAU;IAIV,SAAS,CAAC,GAAG,KAAA;IAQb,YAAY,CAAC,GAAG,KAAA;;;;IAiCV,SAAS,CAAC,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,OAAO,KAAA,EAAE,IAAI,CAAC,KAAA,EAAE,EAAE,CAAC,KAAA;IA4GnD,aAAa,CAAC,IAAI,KAAA;IAKlB,WAAW,CAAC,EAAE,KAAA,EAAE,QAAQ,KAAA,EAAE,GAAG,CAAC,KAAA;IA8B9B,WAAW,CAAC,EAAE,KAAA,EAAE,QAAQ,KAAA,EAAE,GAAG,CAAC,KAAA;IAUxB,aAAa,CAAC,EAAE,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA,EAAE,EAAE,CAAC,KAAA;IAU1C,aAAa,CAAC,MAAM,KAAA,EAAE,IAAI,CAAC,KAAA,EAAE,KAAK,CAAC,KAAA;IA4BnC,mBAAmB,CAAC,eAAe,KAAA,EAAE,OAAO,CAAC,KAAA;IAiB7C,UAAU,CAAC,GAAG,KAAA,EAAE,eAAe,KAAA;IA6C/B,wBAAwB,CAAC,GAAG,KAAA,EAAE,UAAU,KAAA;;;;IAUlC,eAAe,CAAC,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,EAAE,CAAC,KAAA;;;;IAmBjD,kBAAkB,CAAC,MAAM,KAAA,EAAE,MAAM,KAAA,EAAE,UAAU,KAAA,EAAE,EAAE,CAAC,KAAA;IAoBxD,gBAAgB,CAAC,KAAK,KAAA;CAiDvB;;AAED,wBAA6B"}
@@ -505,6 +505,7 @@ class Helpers {
505
505
  case 'xrp':
506
506
  const priv = xpriv.derive('m/0/0').privateKey;
507
507
  const privKey = priv.toString('hex');
508
+ const pubKey = priv.publicKey.toString('hex');
508
509
  let tx = index_1.ChainService.getBitcoreTx(txp).uncheckedSerialize();
509
510
  const isERC20 = txp.tokenAddress && !txp.payProUrl;
510
511
  const chain = isERC20 ? Utils.getChain(txp.coin) + 'ERC20' : Utils.getChain(txp.coin);
@@ -514,7 +515,7 @@ class Helpers {
514
515
  const signed = crypto_wallet_core_1.Transactions.getSignature({
515
516
  chain: chain.toUpperCase(),
516
517
  tx: rawTx,
517
- key: { privKey: privKey.toString('hex') },
518
+ key: { privKey: privKey.toString('hex'), pubKey },
518
519
  });
519
520
  signatures.push(signed);
520
521
  }
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../test/integration/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../test/integration/helpers.ts"],"names":[],"mappings":"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"}
@@ -105,6 +105,136 @@ describe('History', function () {
105
105
  done();
106
106
  });
107
107
  });
108
+ it('should page from oldest first with reverse and keep skip stable if new txs arrive', async function () {
109
+ const _cache = Defaults.CONFIRMATIONS_TO_START_CACHING;
110
+ Defaults.CONFIRMATIONS_TO_START_CACHING = 1;
111
+ try {
112
+ const baseTxs = helpers_1.default.createTxsV8(5, BCHEIGHT);
113
+ helpers_1.default.stubHistory(null, null, baseTxs);
114
+ const firstPage = await new Promise((resolve, reject) => {
115
+ server.getTxHistory({ limit: 2, reverse: true }, function (err, txs) {
116
+ if (err)
117
+ return reject(err);
118
+ resolve(txs);
119
+ });
120
+ });
121
+ firstPage.map(tx => tx.id).should.deep.equal(['id4', 'id3']);
122
+ const txTemplate = baseTxs[0];
123
+ const updatedTxs = [
124
+ {
125
+ ...txTemplate,
126
+ id: 'newid0',
127
+ txid: 'newtxid0',
128
+ height: -1,
129
+ blockTime: '2018-09-21T18:08:33.000Z'
130
+ },
131
+ {
132
+ ...txTemplate,
133
+ id: 'newid1',
134
+ txid: 'newtxid1',
135
+ height: -1,
136
+ blockTime: '2018-09-21T18:08:32.000Z'
137
+ },
138
+ ...baseTxs
139
+ ];
140
+ helpers_1.default.stubHistory(null, null, updatedTxs);
141
+ const secondPage = await new Promise((resolve, reject) => {
142
+ server.getTxHistory({ skip: 2, limit: 2, reverse: true }, function (err, txs) {
143
+ if (err)
144
+ return reject(err);
145
+ resolve(txs);
146
+ });
147
+ });
148
+ secondPage.map(tx => tx.id).should.deep.equal(['id2', 'id1']);
149
+ }
150
+ finally {
151
+ Defaults.CONFIRMATIONS_TO_START_CACHING = _cache;
152
+ }
153
+ });
154
+ it('should trim reused stream data against the current cache tip in reverse mode', async function () {
155
+ const _cache = Defaults.CONFIRMATIONS_TO_START_CACHING;
156
+ Defaults.CONFIRMATIONS_TO_START_CACHING = 1;
157
+ try {
158
+ const baseTxs = helpers_1.default.createTxsV8(4, BCHEIGHT);
159
+ helpers_1.default.stubHistory(null, null, baseTxs);
160
+ await new Promise((resolve, reject) => {
161
+ server.storage.storeTxHistoryCacheV8(wallet.id, null, [
162
+ {
163
+ id: baseTxs[3].id,
164
+ txid: baseTxs[3].txid,
165
+ blockheight: baseTxs[3].height
166
+ }
167
+ ], 0, err => {
168
+ if (err)
169
+ return reject(err);
170
+ resolve();
171
+ });
172
+ });
173
+ const firstPage = await new Promise((resolve, reject) => {
174
+ server.getTxHistory({ limit: 2, reverse: true }, function (err, txs, _fromCache, useStream) {
175
+ if (err)
176
+ return reject(err);
177
+ resolve({ txs, useStream });
178
+ });
179
+ });
180
+ firstPage.useStream.should.equal(false);
181
+ firstPage.txs.map(tx => tx.id).should.deep.equal(['id3', 'id2']);
182
+ const secondPage = await new Promise((resolve, reject) => {
183
+ server.getTxHistory({ skip: 2, limit: 2, reverse: true }, function (err, txs, _fromCache, useStream) {
184
+ if (err)
185
+ return reject(err);
186
+ resolve({ txs, useStream });
187
+ });
188
+ });
189
+ secondPage.useStream.should.equal(true);
190
+ secondPage.txs.map(tx => tx.id).should.deep.equal(['id1', 'id0']);
191
+ }
192
+ finally {
193
+ Defaults.CONFIRMATIONS_TO_START_CACHING = _cache;
194
+ }
195
+ });
196
+ it('should trim reused stream data against the current cache tip in newest-first mode', async function () {
197
+ const _cache = Defaults.CONFIRMATIONS_TO_START_CACHING;
198
+ Defaults.CONFIRMATIONS_TO_START_CACHING = 1;
199
+ try {
200
+ const baseTxs = helpers_1.default.createTxsV8(4, BCHEIGHT);
201
+ helpers_1.default.stubHistory(null, null, baseTxs);
202
+ await new Promise((resolve, reject) => {
203
+ server.storage.storeTxHistoryCacheV8(wallet.id, null, [
204
+ {
205
+ id: baseTxs[3].id,
206
+ txid: baseTxs[3].txid,
207
+ blockheight: baseTxs[3].height
208
+ }
209
+ ], 0, err => {
210
+ if (err)
211
+ return reject(err);
212
+ resolve();
213
+ });
214
+ });
215
+ const firstPage = await new Promise((resolve, reject) => {
216
+ server.getTxHistory({ limit: 2 }, function (err, txs, _fromCache, useStream) {
217
+ if (err)
218
+ return reject(err);
219
+ resolve({ txs, useStream });
220
+ });
221
+ });
222
+ firstPage.useStream.should.equal(false);
223
+ firstPage.txs.map(tx => tx.id).should.deep.equal(['id0', 'id1']);
224
+ const secondPage = await new Promise((resolve, reject) => {
225
+ server.getTxHistory({ skip: 2, limit: 2 }, function (err, txs, _fromCache, useStream) {
226
+ if (err)
227
+ return reject(err);
228
+ resolve({ txs, useStream });
229
+ });
230
+ });
231
+ secondPage.useStream.should.equal(true);
232
+ secondPage.txs.map(tx => tx.id).should.deep.equal(['id2', 'id3']);
233
+ }
234
+ finally {
235
+ Defaults.CONFIRMATIONS_TO_START_CACHING = _cache;
236
+ }
237
+ });
108
238
  it('should filter out DUST amount', function (done) {
109
239
  const txs = helpers_1.default.createTxsV8(50, BCHEIGHT);
110
240
  txs[5].satoshis = 100;
@@ -1 +1 @@
1
- {"version":3,"file":"history.test.js","sourceRoot":"","sources":["../../../test/integration/history.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.test.js","sourceRoot":"","sources":["../../../test/integration/history.test.ts"],"names":[],"mappings":"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"}
@@ -7555,6 +7555,82 @@ describe('Wallet service', function () {
7555
7555
  result.nonce.should.equal(5);
7556
7556
  });
7557
7557
  });
7558
+ describe('#prepareTx XRP (deferred nonce)', function () {
7559
+ const XRP_ADDR = 'rDzTZxa7NwD9vmNf5dvTbW4FQDNSRsfPv6';
7560
+ let server, wallet, fromAddr;
7561
+ beforeEach(async function () {
7562
+ ({ server, wallet } = await helpers_1.default.createAndJoinWallet(1, 1, { coin: 'xrp' }));
7563
+ const address = await util_1.default.promisify(server.createAddress).call(server, {});
7564
+ fromAddr = address.address;
7565
+ await helpers_1.default.stubUtxos(server, wallet, [1, 2], { coin: 'xrp' });
7566
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '5');
7567
+ });
7568
+ it('should create XRP txp with nonce=null when deferNonce is true', async function () {
7569
+ const txp = await util_1.default.promisify(server.createTx).call(server, {
7570
+ outputs: [{ toAddress: XRP_ADDR, amount: 8000 }],
7571
+ feePerKb: 123e2,
7572
+ from: fromAddr,
7573
+ deferNonce: true
7574
+ });
7575
+ should.exist(txp);
7576
+ txp.deferNonce.should.be.true;
7577
+ should.not.exist(txp.nonce);
7578
+ });
7579
+ it('should assign nonce to a deferred XRP txp via prepareTx', async function () {
7580
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '10');
7581
+ const txp = await helpers_1.default.createAndPublishTx(server, {
7582
+ outputs: [{ toAddress: XRP_ADDR, amount: 8000 }],
7583
+ feePerKb: 123e2,
7584
+ from: fromAddr,
7585
+ deferNonce: true
7586
+ }, TestData.copayers[0].privKey_1H_0);
7587
+ should.not.exist(txp.nonce);
7588
+ const result = await util_1.default.promisify(server.prepareTx).call(server, {
7589
+ txProposalId: txp.id
7590
+ });
7591
+ result.nonce.should.equal(10);
7592
+ });
7593
+ it('should calculate gap-free nonce for XRP skipping pending nonces', async function () {
7594
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '5');
7595
+ const normalTxp = await helpers_1.default.createAndPublishTx(server, {
7596
+ outputs: [{ toAddress: XRP_ADDR, amount: 1000 }],
7597
+ feePerKb: 123e2,
7598
+ from: fromAddr
7599
+ }, TestData.copayers[0].privKey_1H_0);
7600
+ normalTxp.nonce.should.equal('5');
7601
+ const deferred = await helpers_1.default.createAndPublishTx(server, {
7602
+ outputs: [{ toAddress: XRP_ADDR, amount: 2000 }],
7603
+ feePerKb: 123e2,
7604
+ from: fromAddr,
7605
+ deferNonce: true
7606
+ }, TestData.copayers[0].privKey_1H_0);
7607
+ const result = await util_1.default.promisify(server.prepareTx).call(server, {
7608
+ txProposalId: deferred.id
7609
+ });
7610
+ result.nonce.should.equal(6);
7611
+ });
7612
+ it('should sign XRP txp after prepareTx assigns nonce', async function () {
7613
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '7');
7614
+ helpers_1.default.stubBroadcast('txid123');
7615
+ const txp = await helpers_1.default.createAndPublishTx(server, {
7616
+ outputs: [{ toAddress: XRP_ADDR, amount: 8000 }],
7617
+ feePerKb: 123e2,
7618
+ from: fromAddr,
7619
+ deferNonce: true
7620
+ }, TestData.copayers[0].privKey_1H_0);
7621
+ const withNonce = await util_1.default.promisify(server.prepareTx).call(server, {
7622
+ txProposalId: txp.id
7623
+ });
7624
+ withNonce.nonce.should.equal(7);
7625
+ const fetched = await util_1.default.promisify(server.getTx).call(server, { txProposalId: txp.id });
7626
+ const signatures = helpers_1.default.clientSign(fetched, TestData.copayers[0].xPrivKey_44H_0H_0H);
7627
+ const signed = await util_1.default.promisify(server.signTx).call(server, {
7628
+ txProposalId: txp.id,
7629
+ signatures
7630
+ });
7631
+ signed.status.should.equal('accepted');
7632
+ });
7633
+ });
7558
7634
  describe('#signTx nonce override', function () {
7559
7635
  const ETH_ADDR = '0x37d7B3bBD88EFdE6a93cF74D2F5b0385D3E3B08A';
7560
7636
  let server, wallet, fromAddr;