@bitpay-labs/bitcore-wallet-service 11.11.1 → 11.11.2

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 (60) hide show
  1. package/Dockerfile +1 -1
  2. package/package.json +5 -5
  3. package/src/lib/chain/btc/index.ts +3 -2
  4. package/src/lib/chain/eth/index.ts +134 -117
  5. package/src/lib/chain/sol/index.ts +1 -1
  6. package/src/lib/chain/xrp/index.ts +1 -1
  7. package/src/lib/routes/wallets.ts +3 -1
  8. package/src/lib/server.ts +136 -88
  9. package/src/lib/storage.ts +90 -20
  10. package/test/chain/eth.test.ts +70 -0
  11. package/test/chain/sol.test.ts +1 -1
  12. package/test/chain/xrp.test.ts +1 -1
  13. package/test/expressapp.test.ts +144 -0
  14. package/test/integration/addressReads.test.ts +503 -0
  15. package/test/integration/bcmonitor.test.ts +44 -0
  16. package/test/integration/server.test.ts +198 -48
  17. package/test/integration/walletReads.test.ts +488 -0
  18. package/ts_build/package.json +3 -3
  19. package/ts_build/src/lib/chain/btc/index.d.ts.map +1 -1
  20. package/ts_build/src/lib/chain/btc/index.js +3 -2
  21. package/ts_build/src/lib/chain/btc/index.js.map +1 -1
  22. package/ts_build/src/lib/chain/eth/index.d.ts +8 -1
  23. package/ts_build/src/lib/chain/eth/index.d.ts.map +1 -1
  24. package/ts_build/src/lib/chain/eth/index.js +114 -102
  25. package/ts_build/src/lib/chain/eth/index.js.map +1 -1
  26. package/ts_build/src/lib/chain/sol/index.js +1 -1
  27. package/ts_build/src/lib/chain/sol/index.js.map +1 -1
  28. package/ts_build/src/lib/chain/xrp/index.js +1 -1
  29. package/ts_build/src/lib/chain/xrp/index.js.map +1 -1
  30. package/ts_build/src/lib/routes/wallets.d.ts.map +1 -1
  31. package/ts_build/src/lib/routes/wallets.js +2 -1
  32. package/ts_build/src/lib/routes/wallets.js.map +1 -1
  33. package/ts_build/src/lib/server.d.ts +1 -1
  34. package/ts_build/src/lib/server.d.ts.map +1 -1
  35. package/ts_build/src/lib/server.js +128 -94
  36. package/ts_build/src/lib/server.js.map +1 -1
  37. package/ts_build/src/lib/storage.d.ts +17 -10
  38. package/ts_build/src/lib/storage.d.ts.map +1 -1
  39. package/ts_build/src/lib/storage.js +73 -20
  40. package/ts_build/src/lib/storage.js.map +1 -1
  41. package/ts_build/test/chain/eth.test.js +59 -0
  42. package/ts_build/test/chain/eth.test.js.map +1 -1
  43. package/ts_build/test/chain/sol.test.js +1 -1
  44. package/ts_build/test/chain/sol.test.js.map +1 -1
  45. package/ts_build/test/chain/xrp.test.js +1 -1
  46. package/ts_build/test/chain/xrp.test.js.map +1 -1
  47. package/ts_build/test/expressapp.test.js +132 -0
  48. package/ts_build/test/expressapp.test.js.map +1 -1
  49. package/ts_build/test/integration/addressReads.test.d.ts +2 -0
  50. package/ts_build/test/integration/addressReads.test.d.ts.map +1 -0
  51. package/ts_build/test/integration/addressReads.test.js +465 -0
  52. package/ts_build/test/integration/addressReads.test.js.map +1 -0
  53. package/ts_build/test/integration/bcmonitor.test.js +40 -0
  54. package/ts_build/test/integration/bcmonitor.test.js.map +1 -1
  55. package/ts_build/test/integration/server.test.js +181 -48
  56. package/ts_build/test/integration/server.test.js.map +1 -1
  57. package/ts_build/test/integration/walletReads.test.d.ts +2 -0
  58. package/ts_build/test/integration/walletReads.test.d.ts.map +1 -0
  59. package/ts_build/test/integration/walletReads.test.js +436 -0
  60. package/ts_build/test/integration/walletReads.test.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"bcmonitor.test.js","sourceRoot":"","sources":["../../../test/integration/bcmonitor.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bcmonitor.test.js","sourceRoot":"","sources":["../../../test/integration/bcmonitor.test.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const chai = __importStar(require("chai"));
40
40
  require("chai/register-should");
41
41
  const util_1 = __importDefault(require("util"));
42
+ const assert_1 = __importDefault(require("assert"));
42
43
  const sinon_1 = __importDefault(require("sinon"));
43
44
  const http_1 = __importDefault(require("http"));
44
45
  const request_1 = __importDefault(require("request"));
@@ -2669,28 +2670,21 @@ describe('Wallet service', function () {
2669
2670
  should.exist(address);
2670
2671
  utxo.path.should.equal(address.path);
2671
2672
  utxo.publicKeys.should.deep.equal(address.publicKeys);
2673
+ utxo.isChange.should.equal(false);
2672
2674
  done();
2673
2675
  });
2674
2676
  });
2675
2677
  });
2676
2678
  });
2677
- it('should get UTXOs for wallet addresses', function (done) {
2678
- helpers_1.default.stubUtxos(server, wallet, [1, 2]).then(function () {
2679
- server.getUtxos({}, function (err, utxos) {
2680
- should.not.exist(err);
2681
- should.exist(utxos);
2682
- utxos.length.should.equal(2);
2683
- utxos.reduce((sum, u) => sum += u.satoshis, 0).should.equal(3 * 1e8);
2684
- server.getAddresses({ noChange: true }, function (err, addresses) {
2685
- const utxo = utxos[0];
2686
- const address = addresses.find(a => a.address === utxo.address);
2687
- should.exist(address);
2688
- utxo.path.should.equal(address.path);
2689
- utxo.publicKeys.should.deep.equal(address.publicKeys);
2690
- done();
2691
- });
2692
- });
2693
- });
2679
+ it('should identify UTXOs for change addresses', async function () {
2680
+ const address = await util_1.default.promisify(server.createAddress).call(server, { isChange: true });
2681
+ await helpers_1.default.stubUtxos(server, wallet, [1], { addresses: [address] });
2682
+ const utxos = await util_1.default.promisify(server.getUtxos).call(server, {});
2683
+ utxos.length.should.equal(1);
2684
+ utxos[0].address.should.equal(address.address);
2685
+ utxos[0].path.should.equal(address.path);
2686
+ utxos[0].publicKeys.should.deep.equal(address.publicKeys);
2687
+ utxos[0].isChange.should.equal(true);
2694
2688
  });
2695
2689
  it('should return empty UTXOs for specific addresses if network mismatch', function (done) {
2696
2690
  helpers_1.default.stubUtxos(server, wallet, [1, 2, 3]).then(function (utxos) {
@@ -4542,7 +4536,6 @@ describe('Wallet service', function () {
4542
4536
  toAddress: addressStr,
4543
4537
  amount: ts,
4544
4538
  }],
4545
- gasPrice: 1,
4546
4539
  feeLevel: level,
4547
4540
  from: fromAddr,
4548
4541
  }, flags);
@@ -5705,36 +5698,35 @@ describe('Wallet service', function () {
5705
5698
  coin: 'eth',
5706
5699
  }));
5707
5700
  });
5708
- it('should allow to create a TX with fee and no inputs', function (done) {
5709
- helpers_1.default.stubFeeLevels({});
5710
- server.createAddress({}, from => {
5711
- helpers_1.default.stubUtxos(server, wallet, [1, 2]).then(function () {
5712
- const amount = 0.8 * 1e8;
5713
- const txOpts = {
5714
- outputs: [{
5715
- toAddress: '0x37d7B3bBD88EFdE6a93cF74D2F5b0385D3E3B08A',
5716
- amount: amount,
5717
- }],
5718
- from,
5719
- message: 'some message',
5720
- customData: 'some custom data',
5721
- fee: 252000000000000,
5722
- };
5723
- server.createTx(txOpts, function (err, tx) {
5724
- should.not.exist(err);
5725
- should.exist(tx);
5726
- tx.outputs.should.deep.equal([{
5727
- toAddress: '0x37d7B3bBD88EFdE6a93cF74D2F5b0385D3E3B08A',
5728
- gasLimit: 21000,
5729
- amount: amount,
5730
- }]);
5731
- tx.gasPrice.should.equal(12000000000);
5732
- tx.outputs[0].gasLimit.should.equal(21000);
5733
- (tx.gasPrice * tx.outputs[0].gasLimit).should.equal(txOpts.fee);
5734
- done();
5735
- });
5736
- });
5737
- });
5701
+ it('should allow to create a TX with fee and no inputs', async function () {
5702
+ const feeLevels = sinon_1.default.stub(server, 'getFeeLevels').callsArgWith(1, new Error('Unexpected fee estimation'));
5703
+ await util_1.default.promisify(server.createAddress).call(server, {});
5704
+ await helpers_1.default.stubUtxos(server, wallet, [1, 2]);
5705
+ const amount = 0.8 * 1e8;
5706
+ for (const fee of [252000000000000, '252000000000000']) {
5707
+ const txOpts = {
5708
+ outputs: [{
5709
+ toAddress: '0x37d7B3bBD88EFdE6a93cF74D2F5b0385D3E3B08A',
5710
+ amount: amount,
5711
+ }],
5712
+ message: 'some message',
5713
+ customData: 'some custom data',
5714
+ fee,
5715
+ };
5716
+ const tx = await util_1.default.promisify(server.createTx).call(server, txOpts);
5717
+ should.exist(tx);
5718
+ tx.outputs.should.deep.equal([{
5719
+ toAddress: '0x37d7B3bBD88EFdE6a93cF74D2F5b0385D3E3B08A',
5720
+ gasLimit: 21000,
5721
+ amount: amount,
5722
+ }]);
5723
+ tx.fee.should.equal(Number(fee));
5724
+ tx.gasPrice.should.equal(12000000000);
5725
+ (tx.gasPrice * tx.outputs[0].gasLimit).should.equal(Number(fee));
5726
+ const [raw] = tx.getRawTx();
5727
+ CWC.ethers.Transaction.from(raw).gasPrice.should.equal(12000000000n);
5728
+ }
5729
+ feeLevels.called.should.be.false;
5738
5730
  });
5739
5731
  it('should allow to create a TX with multiple outputs and set the correct fee', function (done) {
5740
5732
  helpers_1.default.stubFeeLevels({});
@@ -5799,6 +5791,147 @@ describe('Wallet service', function () {
5799
5791
  });
5800
5792
  });
5801
5793
  });
5794
+ describe('#createTX EVM gas overrides', function () {
5795
+ let server;
5796
+ let wallet;
5797
+ const destination = '0x37d7B3bBD88EFdE6a93cF74D2F5b0385D3E3B08A';
5798
+ const makeOpts = (overrides = {}) => ({
5799
+ outputs: [{ toAddress: destination, amount: 1000000, gasLimit: 100000 }],
5800
+ nonce: 1,
5801
+ ...overrides
5802
+ });
5803
+ beforeEach(async function () {
5804
+ ({ server, wallet } = await helpers_1.default.createAndJoinWallet(1, 1, { coin: 'eth' }));
5805
+ await util_1.default.promisify(server.createAddress).call(server, {});
5806
+ await helpers_1.default.stubUtxos(server, wallet, [1]);
5807
+ });
5808
+ for (const scenario of [
5809
+ { name: 'type 0', fees: { gasPrice: 3000000000 }, tokenAddress: undefined },
5810
+ { name: 'type 0 token', fees: { gasPrice: 3000000000 }, tokenAddress: TOKENS[0] },
5811
+ { name: 'type 2 native', fees: { txType: 2, maxGasFee: 3000000000, priorityGasFee: 1000000000 }, tokenAddress: undefined },
5812
+ { name: 'type 2 token', fees: { txType: 2, maxGasFee: 3000000000, priorityGasFee: 1000000000 }, tokenAddress: TOKENS[0] }
5813
+ ]) {
5814
+ it(`should preserve ${scenario.name} overrides through publication, signing and broadcast`, async function () {
5815
+ const feeLevels = sinon_1.default.stub(server, 'getFeeLevels').callsArgWith(1, new Error('Unexpected fee estimation'));
5816
+ const maxFee = sinon_1.default.stub(server, 'estimateFee').rejects(new Error('Unexpected fee estimation'));
5817
+ const priorityFee = sinon_1.default.stub(server, 'estimatePriorityFee').rejects(new Error('Unexpected fee estimation'));
5818
+ const txp = await util_1.default.promisify(server.createTx).call(server, makeOpts({
5819
+ ...scenario.fees, tokenAddress: scenario.tokenAddress, feeLevel: 'economy'
5820
+ }));
5821
+ await util_1.default.promisify(server.publishTx).call(server, helpers_1.default.getProposalSignatureOpts(txp, TestData.copayers[0].privKey_1H_0));
5822
+ await util_1.default.promisify(server.signTx).call(server, {
5823
+ txProposalId: txp.id,
5824
+ signatures: helpers_1.default.clientSign(txp, TestData.copayers[0].xPrivKey_44H_0H_0H)
5825
+ });
5826
+ const accepted = await util_1.default.promisify(server.getTx).call(server, { txProposalId: txp.id });
5827
+ accepted.status.should.equal('accepted');
5828
+ const signedRaw = accepted.getRawTx();
5829
+ helpers_1.default.stubBroadcast(accepted.txid);
5830
+ await util_1.default.promisify(server.broadcastTx).call(server, { txProposalId: txp.id });
5831
+ blockchainExplorer.broadcast.calledOnce.should.be.true;
5832
+ blockchainExplorer.broadcast.firstCall.args[0].should.deep.equal(signedRaw);
5833
+ const stored = await util_1.default.promisify(server.getTx).call(server, { txProposalId: txp.id });
5834
+ stored.status.should.equal('broadcasted');
5835
+ stored.txid.should.equal(accepted.txid);
5836
+ should.not.exist(stored.feeLevel);
5837
+ stored.fee.should.equal(300000000000000);
5838
+ for (const [key, value] of Object.entries(scenario.fees)) {
5839
+ stored[key].should.equal(value);
5840
+ }
5841
+ const [raw] = stored.getRawTx();
5842
+ const tx = CWC.ethers.Transaction.from(raw);
5843
+ tx.isSigned().should.be.true;
5844
+ tx.type.should.equal(scenario.fees.txType || 0);
5845
+ if (scenario.fees.txType === 2) {
5846
+ tx.maxFeePerGas.should.equal(3000000000n);
5847
+ tx.maxPriorityFeePerGas.should.equal(1000000000n);
5848
+ }
5849
+ else {
5850
+ tx.gasPrice.should.equal(3000000000n);
5851
+ }
5852
+ feeLevels.called.should.be.false;
5853
+ maxFee.called.should.be.false;
5854
+ priorityFee.called.should.be.false;
5855
+ });
5856
+ }
5857
+ it('should preserve a zero priority fee estimated for ARB', async function () {
5858
+ ({ server, wallet } = await helpers_1.default.createAndJoinWallet(1, 1, { coin: 'arb' }));
5859
+ await util_1.default.promisify(server.createAddress).call(server, {});
5860
+ sinon_1.default.replace(blockchainExplorer, 'getBalance', sinon_1.default.stub().callsArgWith(1, null, { confirmed: 1e18, unconfirmed: 0, balance: 1e18 }));
5861
+ helpers_1.default.stubFeeLevels({});
5862
+ sinon_1.default.stub(server, 'estimateFee').resolves(3000000000);
5863
+ sinon_1.default.stub(server, 'estimatePriorityFee').resolves(0);
5864
+ const txp = await util_1.default.promisify(server.createTx).call(server, makeOpts({ txType: 2 }));
5865
+ txp.priorityGasFee.should.equal(0);
5866
+ const [raw] = txp.getRawTx();
5867
+ CWC.ethers.Transaction.from(raw).maxPriorityFeePerGas.should.equal(0n);
5868
+ });
5869
+ it('should preserve automatic type 2 fee estimation without overrides', async function () {
5870
+ helpers_1.default.stubFeeLevels({});
5871
+ sinon_1.default.stub(server, 'estimateFee').resolves(4500000000);
5872
+ sinon_1.default.stub(server, 'estimatePriorityFee').resolves(1000000000);
5873
+ const txp = await util_1.default.promisify(server.createTx).call(server, makeOpts({ txType: 2 }));
5874
+ txp.feeLevel.should.equal('normal');
5875
+ txp.gasPrice.should.equal(1000000000);
5876
+ txp.fee.should.equal(100000000000000);
5877
+ txp.maxGasFee.should.equal(4500000000);
5878
+ txp.priorityGasFee.should.equal(1000000000);
5879
+ const [raw] = txp.getRawTx();
5880
+ const tx = CWC.ethers.Transaction.from(raw);
5881
+ tx.maxFeePerGas.should.equal(4500000000n);
5882
+ tx.maxPriorityFeePerGas.should.equal(1000000000n);
5883
+ });
5884
+ it('should enforce the existing MATIC minimum for explicit priority fees', async function () {
5885
+ ({ server, wallet } = await helpers_1.default.createAndJoinWallet(1, 1, { coin: 'matic' }));
5886
+ await util_1.default.promisify(server.createAddress).call(server, {});
5887
+ sinon_1.default.replace(blockchainExplorer, 'getBalance', sinon_1.default.stub().callsArgWith(1, null, { confirmed: 1e18, unconfirmed: 0, balance: 1e18 }));
5888
+ const fees = { txType: 2, maxGasFee: 40000000000, priorityGasFee: 30000000000 };
5889
+ await assert_1.default.rejects(util_1.default.promisify(server.createTx).call(server, makeOpts({ ...fees, priorityGasFee: fees.priorityGasFee - 1 })), {
5890
+ message: 'priorityGasFee must be at least 30000000000 wei for matic'
5891
+ });
5892
+ const txp = await util_1.default.promisify(server.createTx).call(server, makeOpts(fees));
5893
+ const [raw] = txp.getRawTx();
5894
+ CWC.ethers.Transaction.from(raw).maxPriorityFeePerGas.should.equal(30000000000n);
5895
+ txp.fee.should.equal(fees.maxGasFee * 100000);
5896
+ });
5897
+ it('should reject invalid or conflicting gas overrides', async function () {
5898
+ const requests = [
5899
+ ...[
5900
+ { key: 'gasPrice', values: [0, 1.5, '1000', Number.MAX_SAFE_INTEGER + 1] },
5901
+ { key: 'maxGasFee', values: [0] },
5902
+ { key: 'priorityGasFee', values: [0] }
5903
+ ].flatMap(({ key, values }) => values.map(value => ({
5904
+ params: { [key]: value }, message: `${key} must be a positive safe integer in wei`
5905
+ }))),
5906
+ { params: { gasPrice: 1000, txType: 2 }, message: 'gasPrice requires a type 0 transaction' },
5907
+ { params: { maxGasFee: 1000 }, message: 'maxGasFee and priorityGasFee require a type 2 transaction' },
5908
+ { params: { priorityGasFee: 1000, txType: 0 }, message: 'maxGasFee and priorityGasFee require a type 2 transaction' },
5909
+ { params: { maxGasFee: 1000, txType: 2 }, message: 'maxGasFee and priorityGasFee must be supplied together' },
5910
+ { params: { priorityGasFee: 1000, txType: 2 }, message: 'maxGasFee and priorityGasFee must be supplied together' },
5911
+ { params: { gasPrice: 1000, feePerKb: 1000 }, message: 'Gas fee overrides cannot be combined with feePerKb or fee' },
5912
+ { params: { gasPrice: 1000, fee: 1000 }, message: 'Gas fee overrides cannot be combined with feePerKb or fee' },
5913
+ { params: { gasPrice: 1000, sendMax: true }, message: 'Gas fee overrides are not supported with sendMax' },
5914
+ { params: { txType: 2, maxGasFee: 1000, priorityGasFee: 2000 }, message: 'priorityGasFee must not exceed maxGasFee' }
5915
+ ];
5916
+ for (const { params, message } of requests) {
5917
+ await assert_1.default.rejects(util_1.default.promisify(server.createTx).call(server, makeOpts(params)), { message });
5918
+ }
5919
+ await assert_1.default.rejects(util_1.default.promisify(server._validateAndSanitizeTxOpts).call(server, { ...wallet, chain: 'btc' }, makeOpts({ gasPrice: 1000 })), {
5920
+ message: 'Gas fee overrides are only supported for EVM chains'
5921
+ });
5922
+ });
5923
+ for (const tokenAddress of [undefined, TOKENS[0]]) {
5924
+ it(`should reserve the overridden fee for ${tokenAddress ? 'token' : 'native'} proposals`, async function () {
5925
+ helpers_1.default.stubFeeLevels({});
5926
+ await helpers_1.default.stubUtxos(server, wallet, [0.0002]);
5927
+ const defaultTxp = await util_1.default.promisify(server.createTx).call(server, makeOpts({ tokenAddress }));
5928
+ defaultTxp.fee.should.equal(100000000000000);
5929
+ await assert_1.default.rejects(util_1.default.promisify(server.createTx).call(server, makeOpts({
5930
+ txType: 2, maxGasFee: 3000000000, priorityGasFee: 1000000000, tokenAddress
5931
+ })), { code: tokenAddress ? 'INSUFFICIENT_ETH_FEE' : 'INSUFFICIENT_FUNDS_FOR_FEE' });
5932
+ });
5933
+ }
5934
+ });
5802
5935
  describe('cashAddr backwards compat', function () {
5803
5936
  it('should create a BCH tx proposal with cashaddr outputs (w/o prefix) and return Copay addr', function (done) {
5804
5937
  const copayAddr = 'CPrtPWbp8cCftTQu5fzuLG5zPJNDHMMf8X';