@bitpay-labs/bitcore-wallet-service 11.10.2 → 11.10.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 (72) hide show
  1. package/bws.example.config.js +4 -3
  2. package/package.json +5 -5
  3. package/src/config.ts +4 -3
  4. package/src/externalservices/moonpay.ts +10 -0
  5. package/src/externalservices/transak.ts +15 -0
  6. package/src/lib/blockchainexplorers/v8.ts +19 -0
  7. package/src/lib/chain/xrp/index.ts +13 -8
  8. package/src/lib/common/defaults.ts +3 -0
  9. package/src/lib/common/utils.ts +3 -3
  10. package/src/lib/emailservice.ts +2 -1
  11. package/src/lib/model/txproposal.ts +4 -0
  12. package/src/lib/pushnotificationsservice.ts +2 -1
  13. package/src/lib/routes/services.ts +22 -6
  14. package/src/lib/routes/tss.ts +1 -1
  15. package/src/lib/routes/wallets.ts +16 -1
  16. package/src/lib/server.ts +47 -2
  17. package/test/chain/xrp.test.ts +21 -0
  18. package/test/integration/externalservices/moonpay.test.ts +14 -2
  19. package/test/integration/server.test.ts +138 -0
  20. package/ts_build/package.json +1 -1
  21. package/ts_build/src/config.d.ts.map +1 -1
  22. package/ts_build/src/config.js.map +1 -1
  23. package/ts_build/src/externalservices/moonpay.d.ts.map +1 -1
  24. package/ts_build/src/externalservices/moonpay.js +6 -0
  25. package/ts_build/src/externalservices/moonpay.js.map +1 -1
  26. package/ts_build/src/externalservices/transak.d.ts.map +1 -1
  27. package/ts_build/src/externalservices/transak.js +15 -0
  28. package/ts_build/src/externalservices/transak.js.map +1 -1
  29. package/ts_build/src/lib/blockchainexplorers/v8.d.ts +3 -0
  30. package/ts_build/src/lib/blockchainexplorers/v8.d.ts.map +1 -1
  31. package/ts_build/src/lib/blockchainexplorers/v8.js +18 -0
  32. package/ts_build/src/lib/blockchainexplorers/v8.js.map +1 -1
  33. package/ts_build/src/lib/chain/xrp/index.d.ts.map +1 -1
  34. package/ts_build/src/lib/chain/xrp/index.js +12 -8
  35. package/ts_build/src/lib/chain/xrp/index.js.map +1 -1
  36. package/ts_build/src/lib/common/defaults.d.ts +1 -0
  37. package/ts_build/src/lib/common/defaults.d.ts.map +1 -1
  38. package/ts_build/src/lib/common/defaults.js +1 -0
  39. package/ts_build/src/lib/common/defaults.js.map +1 -1
  40. package/ts_build/src/lib/common/index.d.ts +2 -1
  41. package/ts_build/src/lib/common/index.d.ts.map +1 -1
  42. package/ts_build/src/lib/common/utils.d.ts +1 -1
  43. package/ts_build/src/lib/common/utils.d.ts.map +1 -1
  44. package/ts_build/src/lib/common/utils.js.map +1 -1
  45. package/ts_build/src/lib/emailservice.d.ts.map +1 -1
  46. package/ts_build/src/lib/emailservice.js +1 -1
  47. package/ts_build/src/lib/emailservice.js.map +1 -1
  48. package/ts_build/src/lib/model/txproposal.d.ts +2 -0
  49. package/ts_build/src/lib/model/txproposal.d.ts.map +1 -1
  50. package/ts_build/src/lib/model/txproposal.js +3 -0
  51. package/ts_build/src/lib/model/txproposal.js.map +1 -1
  52. package/ts_build/src/lib/pushnotificationsservice.d.ts.map +1 -1
  53. package/ts_build/src/lib/pushnotificationsservice.js +1 -1
  54. package/ts_build/src/lib/pushnotificationsservice.js.map +1 -1
  55. package/ts_build/src/lib/routes/services.d.ts.map +1 -1
  56. package/ts_build/src/lib/routes/services.js +22 -6
  57. package/ts_build/src/lib/routes/services.js.map +1 -1
  58. package/ts_build/src/lib/routes/tss.js +0 -1
  59. package/ts_build/src/lib/routes/tss.js.map +1 -1
  60. package/ts_build/src/lib/routes/wallets.d.ts.map +1 -1
  61. package/ts_build/src/lib/routes/wallets.js +15 -0
  62. package/ts_build/src/lib/routes/wallets.js.map +1 -1
  63. package/ts_build/src/lib/server.d.ts +3 -0
  64. package/ts_build/src/lib/server.d.ts.map +1 -1
  65. package/ts_build/src/lib/server.js +41 -2
  66. package/ts_build/src/lib/server.js.map +1 -1
  67. package/ts_build/test/chain/xrp.test.js +19 -0
  68. package/ts_build/test/chain/xrp.test.js.map +1 -1
  69. package/ts_build/test/integration/externalservices/moonpay.test.js +14 -2
  70. package/ts_build/test/integration/externalservices/moonpay.test.js.map +1 -1
  71. package/ts_build/test/integration/server.test.js +115 -0
  72. package/ts_build/test/integration/server.test.js.map +1 -1
@@ -40,6 +40,25 @@ const txproposal_1 = require("../../src/lib/model/txproposal");
40
40
  const should = chai.should();
41
41
  const xpub = 'tpubDD7tYYerLNNm65Ez7pRjxQ2NpRHDoyRWoLWudnQ8agXjr7qs9BsPsRXk8Z6spPPJodnaY158YqeCKT5oXuZvbuNLfm1R4kXGJ2vPd9pUxDT';
42
42
  describe('Chain XRP', function () {
43
+ describe('#getWalletSendMaxInfo', function () {
44
+ it('should resolve fee level before calculating sendMax amount', function (done) {
45
+ const server = {
46
+ getBalance: (_opts, cb) => cb(null, { availableAmount: 1000000 }),
47
+ _getFeePerKb: (_wallet, opts, cb) => {
48
+ opts.feeLevel.should.equal('normal');
49
+ return cb(null, 12);
50
+ }
51
+ };
52
+ const wallet = { chain: 'xrp' };
53
+ chain_1.ChainService.get('xrp').getWalletSendMaxInfo(server, wallet, { feeLevel: 'normal' }, (err, info) => {
54
+ should.not.exist(err);
55
+ info.amount.should.equal(999988);
56
+ info.fee.should.equal(12);
57
+ info.feePerKb.should.equal(12);
58
+ done();
59
+ });
60
+ });
61
+ });
43
62
  describe('#getBitcoreTx', function () {
44
63
  it('should create a valid bitcore TX', function () {
45
64
  const txp = txproposal_1.TxProposal.fromObj(aTXP());
@@ -1 +1 @@
1
- {"version":3,"file":"xrp.test.js","sourceRoot":"","sources":["../../../test/chain/xrp.test.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,2CAA6B;AAC7B,gCAA8B;AAC9B,+CAAmD;AACnD,+DAAyE;AAEzE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;AAE7B,MAAM,IAAI,GAAG,iHAAiH,CAAC;AAE/H,QAAQ,CAAC,WAAW,EAAE;IACpB,QAAQ,CAAC,eAAe,EAAE;QACxB,EAAE,CAAC,kCAAkC,EAAE;YACrC,MAAM,GAAG,GAAG,uBAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAe,CAAC;YACrD,MAAM,CAAC,GAAG,oBAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE;YAC5C,MAAM,GAAG,GAAG,uBAAU,CAAC,OAAO,CAAC,SAAS,CAAe,CAAC;YACxD,MAAM,CAAC,GAAG,oBAAY,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACzC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAEhB,CAAC,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBACvC,8WAA8W;aAC/W,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAGH,QAAQ,CAAC,2BAA2B,EAAE;QACpC,EAAE,CAAC,yCAAyC,EAAE;YAC5C,MAAM,GAAG,GAAG,uBAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAe,CAAC;YACrD,MAAM,SAAS,GAAG,oBAAY,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACpE,MAAM,UAAU,GAAG,CAAC,8IAA8I,CAAC,CAAC;YACpK,oBAAY,CAAC,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACpG,MAAM,MAAM,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBACvB,8WAA8W;aAC/W,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE;YAClE,MAAM,GAAG,GAAG,uBAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAe,CAAC;YACrD,MAAM,SAAS,GAAG,oBAAY,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACpE,MAAM,UAAU,GAAG,CAAC,8WAA8W,CAAC,CAAC;YACpY,oBAAY,CAAC,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACpG,MAAM,MAAM,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;gBACvB,8WAA8W;aAC/W,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AAEL,CAAC,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG;IACX,MAAM,GAAG,GAAgB;QACvB,WAAW,EAAE,kIAAkI;QAC/I,SAAS,EAAE,UAAU;QACrB,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,kEAAkE;QACxE,QAAQ,EAAE,sCAAsC;QAChD,SAAS,EAAE,kEAAkE;QAC7E,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,oCAAoC;QAC1C,aAAa,EAAE,IAAI;QACnB,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,oCAAoC;gBAC7C,SAAS,EAAE,oCAAoC;gBAC/C,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,OAAO;aAClB,CAAC;QACF,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACnB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,kBAAkB,EAAE,CAAC;QACrB,kBAAkB,EAAE,CAAC;QACrB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,EAAE;QACZ,uBAAuB,EAAE,IAAI;QAC7B,WAAW,EAAE,OAAO;QACpB,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,OAAO;QACf,GAAG,EAAE,EAAE;QACP,OAAO,EAAE,CAAC;QACV,aAAa,EAAE,UAAU;QACzB,UAAU,EAAE,EAAE;QACd,iBAAiB,EAAE,8IAA8I;QACjK,uBAAuB,EAAE,IAAI;QAC7B,0BAA0B,EAAE,IAAI;QAChC,aAAa,EAAE,OAAO;QACtB,KAAK,EAAE,QAAQ;QACf,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,IAAI;KACd,CAAC;IAEF,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,SAAS,GAAgB;IAC7B,WAAW,EAAE,kIAAkI;IAC/I,SAAS,EAAE,UAAU;IACrB,EAAE,EAAE,sCAAsC;IAC1C,IAAI,EAAE,kEAAkE;IACxE,QAAQ,EAAE,sCAAsC;IAChD,SAAS,EAAE,kEAAkE;IAC7E,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;IACb,IAAI,EAAE,oCAAoC;IAC1C,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,CAAC;YACR,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,oCAAoC;YAC/C,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,OAAO;SAClB,CAAC;IACF,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACnB,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,kBAAkB,EAAE,CAAC;IACrB,kBAAkB,EAAE,CAAC;IACrB,MAAM,EAAE,aAAa;IACrB,OAAO,EAAE;QACP;YACE,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,UAAU;YACrB,SAAS,EAAE,kEAAkE;YAC7E,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,8WAA8W;aAC/W;YACD,IAAI,EAAE,iHAAiH;YACvH,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,kIAAkI;SAChJ;KACF;IACD,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,EAAE;IACZ,uBAAuB,EAAE,IAAI;IAC7B,WAAW,EAAE,OAAO;IACpB,UAAU,EAAE,EAAE;IACd,MAAM,EAAE,OAAO;IACf,GAAG,EAAE,EAAE;IACP,OAAO,EAAE,CAAC;IACV,aAAa,EAAE,UAAU;IACzB,UAAU,EAAE,EAAE;IACd,iBAAiB,EAAE,8IAA8I;IACjK,uBAAuB,EAAE,EAAE;IAC3B,0BAA0B,EAAE,EAAE;IAC9B,aAAa,EAAE,OAAO;IACtB,GAAG,EAAE;QACH,8WAA8W;KAC/W;IACD,KAAK,EAAE,QAAQ;IACf,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,EAAE;CACd,CAAC"}
1
+ {"version":3,"file":"xrp.test.js","sourceRoot":"","sources":["../../../test/chain/xrp.test.ts"],"names":[],"mappings":"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"}
@@ -276,7 +276,9 @@ describe('Moonpay integration', () => {
276
276
  describe('#moonpayGetSignedPaymentUrl', () => {
277
277
  beforeEach(() => {
278
278
  req = {
279
- headers: {},
279
+ headers: {
280
+ 'x-forwarded-for': '1.2.3.4'
281
+ },
280
282
  body: {
281
283
  env: 'production',
282
284
  currencyCode: 'btc',
@@ -292,7 +294,17 @@ describe('Moonpay integration', () => {
292
294
  it('should get the paymentUrl properly if req is OK', () => {
293
295
  const data = server.externalServices.moonpay.moonpayGetSignedPaymentUrl(req);
294
296
  should.exist(data.urlWithSignature);
295
- data.urlWithSignature.should.equal('widgetApi2?apiKey=apiKey2&currencyCode=btc&walletAddress=bitcoin%3A123123&baseCurrencyCode=usd&baseCurrencyAmount=500&externalTransactionId=123123&redirectURL=bitpay%3A%2F%2Fmoonpay&signature=%2FDnbsboySgE%2FeAvMrwzROCLuuctkhgw5C2t2OofjOzo%3D');
297
+ data.urlWithSignature.should.equal('widgetApi2?apiKey=apiKey2&currencyCode=btc&walletAddress=bitcoin%3A123123&baseCurrencyCode=usd&baseCurrencyAmount=500&externalTransactionId=123123&redirectURL=bitpay%3A%2F%2Fmoonpay&allowedIpAddress=CN35SFB5PKS4vkiZ4CglTxRgTAaUHBLGZcenAw6gHEY%3D&signature=3XxjRX3EMj2RNaoAwgOwFBOiVTXsgAS7C50uJf9SsvM%3D');
298
+ });
299
+ it('should return error if request does not have IP', () => {
300
+ delete req.headers['x-forwarded-for'];
301
+ try {
302
+ server.externalServices.moonpay.moonpayGetSignedPaymentUrl(req);
303
+ should.fail('should have thrown');
304
+ }
305
+ catch (err) {
306
+ err.message.should.equal('Could not determine device IP address');
307
+ }
296
308
  });
297
309
  it('should return error if there is some missing arguments', () => {
298
310
  delete req.body.currencyCode;
@@ -1 +1 @@
1
- {"version":3,"file":"moonpay.test.js","sourceRoot":"","sources":["../../../../test/integration/externalservices/moonpay.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"moonpay.test.js","sourceRoot":"","sources":["../../../../test/integration/externalservices/moonpay.test.ts"],"names":[],"mappings":"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"}
@@ -7540,6 +7540,121 @@ describe('Wallet service', function () {
7540
7540
  }
7541
7541
  assignedNonces.should.deep.equal([10, 11, 12]);
7542
7542
  });
7543
+ async function prepareSignAndBroadcast(txp) {
7544
+ const withNonce = await util_1.default.promisify(server.prepareTx).call(server, { txProposalId: txp.id });
7545
+ const fetched = await util_1.default.promisify(server.getTx).call(server, { txProposalId: txp.id });
7546
+ const signatures = helpers_1.default.clientSign(fetched, TestData.copayers[0].xPrivKey_44H_0H_0H);
7547
+ const signed = await util_1.default.promisify(server.signTx).call(server, { txProposalId: txp.id, signatures });
7548
+ helpers_1.default.stubBroadcast(signed.txid);
7549
+ const broadcasted = await util_1.default.promisify(server.broadcastTx).call(server, { txProposalId: txp.id });
7550
+ broadcasted.status.should.equal('broadcasted');
7551
+ return withNonce;
7552
+ }
7553
+ it('should not reuse the nonce of a broadcasted-but-unmined txp', async function () {
7554
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '10');
7555
+ const txp1 = await helpers_1.default.createAndPublishTx(server, {
7556
+ outputs: [{ toAddress: ETH_ADDR, amount: 1000 }],
7557
+ feePerKb: 123e2,
7558
+ from: fromAddr,
7559
+ deferNonce: true
7560
+ }, TestData.copayers[0].privKey_1H_0);
7561
+ const prepared1 = await prepareSignAndBroadcast(txp1);
7562
+ prepared1.nonce.should.equal(10);
7563
+ const txp2 = await helpers_1.default.createAndPublishTx(server, {
7564
+ outputs: [{ toAddress: ETH_ADDR, amount: 2000 }],
7565
+ feePerKb: 123e2,
7566
+ from: fromAddr,
7567
+ deferNonce: true
7568
+ }, TestData.copayers[0].privKey_1H_0);
7569
+ const prepared2 = await util_1.default.promisify(server.prepareTx).call(server, { txProposalId: txp2.id });
7570
+ prepared2.nonce.should.equal(11);
7571
+ });
7572
+ it('should assign sequential nonces when each txp is broadcast before the next is prepared', async function () {
7573
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '10');
7574
+ const assignedNonces = [];
7575
+ for (let i = 0; i < 3; i++) {
7576
+ const txp = await helpers_1.default.createAndPublishTx(server, {
7577
+ outputs: [{ toAddress: ETH_ADDR, amount: 1000 * (i + 1) }],
7578
+ feePerKb: 123e2,
7579
+ from: fromAddr,
7580
+ deferNonce: true
7581
+ }, TestData.copayers[0].privKey_1H_0);
7582
+ const prepared = await prepareSignAndBroadcast(txp);
7583
+ assignedNonces.push(prepared.nonce);
7584
+ }
7585
+ assignedNonces.should.deep.equal([10, 11, 12]);
7586
+ });
7587
+ it('should not skip nonces of broadcasted txps already counted by the chain', async function () {
7588
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '10');
7589
+ const txp1 = await helpers_1.default.createAndPublishTx(server, {
7590
+ outputs: [{ toAddress: ETH_ADDR, amount: 1000 }],
7591
+ feePerKb: 123e2,
7592
+ from: fromAddr,
7593
+ deferNonce: true
7594
+ }, TestData.copayers[0].privKey_1H_0);
7595
+ const prepared1 = await prepareSignAndBroadcast(txp1);
7596
+ prepared1.nonce.should.equal(10);
7597
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '11');
7598
+ const txp2 = await helpers_1.default.createAndPublishTx(server, {
7599
+ outputs: [{ toAddress: ETH_ADDR, amount: 2000 }],
7600
+ feePerKb: 123e2,
7601
+ from: fromAddr,
7602
+ deferNonce: true
7603
+ }, TestData.copayers[0].privKey_1H_0);
7604
+ const prepared2 = await util_1.default.promisify(server.prepareTx).call(server, { txProposalId: txp2.id });
7605
+ prepared2.nonce.should.equal(11);
7606
+ });
7607
+ it('should reject signing a deferred txp whose nonce collides with a broadcasted-but-unmined txp', async function () {
7608
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '10');
7609
+ const txp1 = await helpers_1.default.createAndPublishTx(server, {
7610
+ outputs: [{ toAddress: ETH_ADDR, amount: 1000 }],
7611
+ feePerKb: 123e2,
7612
+ from: fromAddr,
7613
+ deferNonce: true
7614
+ }, TestData.copayers[0].privKey_1H_0);
7615
+ const prepared1 = await prepareSignAndBroadcast(txp1);
7616
+ prepared1.nonce.should.equal(10);
7617
+ const txp2 = await helpers_1.default.createAndPublishTx(server, {
7618
+ outputs: [{ toAddress: ETH_ADDR, amount: 2000 }],
7619
+ feePerKb: 123e2,
7620
+ from: fromAddr,
7621
+ deferNonce: true
7622
+ }, TestData.copayers[0].privKey_1H_0);
7623
+ const prepared2 = await util_1.default.promisify(server.prepareTx).call(server, { txProposalId: txp2.id });
7624
+ prepared2.nonce.should.equal(11);
7625
+ const fetched = await util_1.default.promisify(server.getTx).call(server, { txProposalId: txp2.id });
7626
+ const signatures = helpers_1.default.clientSign(fetched, TestData.copayers[0].xPrivKey_44H_0H_0H);
7627
+ try {
7628
+ await util_1.default.promisify(server.signTx).call(server, { txProposalId: txp2.id, signatures, nonce: 10 });
7629
+ throw new Error('should have thrown');
7630
+ }
7631
+ catch (err) {
7632
+ err.should.be.instanceof(clienterror_1.ClientError);
7633
+ err.code.should.equal('TX_NONCE_CONFLICT');
7634
+ }
7635
+ });
7636
+ it('should allow signing a non-deferred txp that reuses an in-flight nonce (speed-up/replacement)', async function () {
7637
+ blockchainExplorer.getTransactionCount = sinon_1.default.stub().callsArgWith(1, null, '10');
7638
+ const txp1 = await helpers_1.default.createAndPublishTx(server, {
7639
+ outputs: [{ toAddress: ETH_ADDR, amount: 1000 }],
7640
+ feePerKb: 123e2,
7641
+ from: fromAddr
7642
+ }, TestData.copayers[0].privKey_1H_0);
7643
+ txp1.nonce.should.equal('10');
7644
+ const sigs1 = helpers_1.default.clientSign(txp1, TestData.copayers[0].xPrivKey_44H_0H_0H);
7645
+ const signed1 = await util_1.default.promisify(server.signTx).call(server, { txProposalId: txp1.id, signatures: sigs1 });
7646
+ helpers_1.default.stubBroadcast(signed1.txid);
7647
+ await util_1.default.promisify(server.broadcastTx).call(server, { txProposalId: txp1.id });
7648
+ const txp2 = await helpers_1.default.createAndPublishTx(server, {
7649
+ outputs: [{ toAddress: ETH_ADDR, amount: 1000 }],
7650
+ feePerKb: 246e2,
7651
+ from: fromAddr
7652
+ }, TestData.copayers[0].privKey_1H_0);
7653
+ txp2.nonce.should.equal('10');
7654
+ const sigs2 = helpers_1.default.clientSign(txp2, TestData.copayers[0].xPrivKey_44H_0H_0H);
7655
+ const signed2 = await util_1.default.promisify(server.signTx).call(server, { txProposalId: txp2.id, signatures: sigs2 });
7656
+ signed2.status.should.equal('accepted');
7657
+ });
7543
7658
  it('should return txp with nonce set (extensibility baseline)', async function () {
7544
7659
  const txp = await helpers_1.default.createAndPublishTx(server, {
7545
7660
  outputs: [{ toAddress: ETH_ADDR, amount: 8000 }],