@ledgerhq/coin-xrp 7.11.0 → 7.12.0-nightly.20260116024452

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.
@@ -16,6 +16,9 @@
16
16
  "**/*.test.{js,jsx,ts,tsx}"
17
17
  ],
18
18
  "ignoreUnresolved": [
19
+ "@jest/expect-utils",
20
+ "@jest/get-type",
21
+ "jest-util",
19
22
  "jest-get-type",
20
23
  "jest-matcher-utils",
21
24
  "jest-message-util"
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @ledgerhq/coin-xrp
2
2
 
3
+ ## 7.12.0-nightly.20260116024452
4
+
5
+ ### Minor Changes
6
+
7
+ - [#13396](https://github.com/LedgerHQ/ledger-live/pull/13396) [`b9a3e43`](https://github.com/LedgerHQ/ledger-live/commit/b9a3e431be33943ab4feb4294d6a7f27b966e61b) Thanks [@gre-ledger](https://github.com/gre-ledger)! - Update Jest to v30
8
+
9
+ - [#13710](https://github.com/LedgerHQ/ledger-live/pull/13710) [`36aaf48`](https://github.com/LedgerHQ/ledger-live/commit/36aaf487c15da117a23332de376257ce8e6582a9) Thanks [@hedi-edelbloute](https://github.com/hedi-edelbloute)! - Returns native empty balance when account is pristine
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [[`537a975`](https://github.com/LedgerHQ/ledger-live/commit/537a975536ca3669d3b88371e1e1f651c4cb9a1b), [`cbcae7c`](https://github.com/LedgerHQ/ledger-live/commit/cbcae7c0ba9b54b1167d26e4227bd2b847207cb9), [`8754614`](https://github.com/LedgerHQ/ledger-live/commit/87546149a62b81f8a25bb6222626592ead629f62), [`cf08174`](https://github.com/LedgerHQ/ledger-live/commit/cf0817462e9f0210fceff29ec60b0699e4e69b71), [`b9a3e43`](https://github.com/LedgerHQ/ledger-live/commit/b9a3e431be33943ab4feb4294d6a7f27b966e61b), [`3ac5f26`](https://github.com/LedgerHQ/ledger-live/commit/3ac5f26111f8596327fa7e588e514509de3f8a59), [`7f05536`](https://github.com/LedgerHQ/ledger-live/commit/7f0553665e9c8721f263825cc79994bfc6729d9b)]:
14
+ - @ledgerhq/cryptoassets@13.37.0-nightly.20260116024452
15
+ - @ledgerhq/coin-framework@6.13.0-nightly.20260116024452
16
+ - @ledgerhq/types-live@6.93.0-nightly.20260116024452
17
+ - @ledgerhq/devices@8.10.0-nightly.20260116024452
18
+ - @ledgerhq/errors@6.29.0-nightly.20260116024452
19
+ - @ledgerhq/logs@6.14.0-nightly.20260116024452
20
+ - @ledgerhq/live-network@2.2.0-nightly.20260116024452
21
+
3
22
  ## 7.11.0
4
23
 
5
24
  ### Minor Changes
package/jest.config.js CHANGED
@@ -1,8 +1,16 @@
1
- /** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
2
1
  // `workerThreads: true` is required for validating object with `bigint` values
3
2
  module.exports = {
4
- preset: "ts-jest",
5
3
  testEnvironment: "node",
4
+ transform: {
5
+ "^.+\\.(ts|tsx)$": [
6
+ "@swc/jest",
7
+ {
8
+ jsc: {
9
+ target: "esnext",
10
+ },
11
+ },
12
+ ],
13
+ },
6
14
  passWithNoTests: true,
7
15
  testPathIgnorePatterns: ["lib/", "lib-es/", ".*\\.(integ|integration)\\.test\\.[tj]s"],
8
16
  collectCoverageFrom: [
@@ -1,9 +1,18 @@
1
- /** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
1
+ /** @type {import('jest').Config} */
2
2
  module.exports = {
3
- preset: "ts-jest",
4
3
  testEnvironment: "node",
5
4
  testRegex: ".integ.test.ts$",
6
5
  testPathIgnorePatterns: ["lib/", "lib-es/"],
7
- setupFiles: ["dotenv/config"],
8
6
  testTimeout: 60_000,
7
+ forceExit: true,
8
+ transform: {
9
+ "^.+\\.(t|j)sx?$": [
10
+ "@swc/jest",
11
+ {
12
+ jsc: {
13
+ target: "esnext",
14
+ },
15
+ },
16
+ ],
17
+ },
9
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAGL,MAAM,EAEN,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AAEvD,eAAO,MAAM,MAAM,cAAqB,MAAM,KAAG,OAAO,CAAC,aAAa,CAErE,CAAC;AAEF,eAAO,MAAM,cAAc,cACd,MAAM,YACP,OAAO,KAChB,OAAO,CAAC,WAAW,CAoCrB,CAAC;AAEF,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,kBAAkB,CAEjE,CAAC;AAGF,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,eAAe,YACjB,MAAM,WACN,sBAAsB,GAAG,SAAS,KAC1C,OAAO,CAAC,iBAAiB,CAW3B,CAAC;AAEF,wBAAsB,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,CAEzD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAItD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAGL,MAAM,EAEN,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AAGvD,eAAO,MAAM,MAAM,cAAqB,MAAM,KAAG,OAAO,CAAC,aAAa,CAErE,CAAC;AAEF,eAAO,MAAM,cAAc,cACd,MAAM,YACP,OAAO,KAChB,OAAO,CAAC,WAAW,CAwCrB,CAAC;AAEF,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,kBAAkB,CAEjE,CAAC;AAGF,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,eAAe,YACjB,MAAM,WACN,sBAAsB,GAAG,SAAS,KAC1C,OAAO,CAAC,iBAAiB,CAW3B,CAAC;AAEF,wBAAsB,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,CAEzD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAItD"}
@@ -11,6 +11,7 @@ const config_1 = __importDefault(require("../config"));
11
11
  const types_1 = require("./types");
12
12
  const getNodeUrl = () => config_1.default.getCoinConfig().node;
13
13
  exports.NEW_ACCOUNT_ERROR_MESSAGE = "actNotFound";
14
+ const NOT_FOUND_ERROR_MESSAGE = "actMalformed";
14
15
  const submit = async (signature) => {
15
16
  return rpcCall("submit", { tx_blob: signature });
16
17
  };
@@ -29,7 +30,9 @@ const getAccountInfo = async (recipient, current) => {
29
30
  ],
30
31
  },
31
32
  });
32
- if (result.status !== "success" && result.error !== exports.NEW_ACCOUNT_ERROR_MESSAGE) {
33
+ if (result.status !== "success" &&
34
+ result.error &&
35
+ ![NOT_FOUND_ERROR_MESSAGE, exports.NEW_ACCOUNT_ERROR_MESSAGE].includes(result.error)) {
33
36
  throw new Error(`couldn't fetch account info ${recipient}`);
34
37
  }
35
38
  if ((0, types_1.isErrorResponse)(result)) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAGL,MAAM,EAEN,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AAEvD,eAAO,MAAM,MAAM,cAAqB,MAAM,KAAG,OAAO,CAAC,aAAa,CAErE,CAAC;AAEF,eAAO,MAAM,cAAc,cACd,MAAM,YACP,OAAO,KAChB,OAAO,CAAC,WAAW,CAoCrB,CAAC;AAEF,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,kBAAkB,CAEjE,CAAC;AAGF,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,eAAe,YACjB,MAAM,WACN,sBAAsB,GAAG,SAAS,KAC1C,OAAO,CAAC,iBAAiB,CAW3B,CAAC;AAEF,wBAAsB,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,CAEzD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAItD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAGL,MAAM,EAEN,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAIjB,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AAGvD,eAAO,MAAM,MAAM,cAAqB,MAAM,KAAG,OAAO,CAAC,aAAa,CAErE,CAAC;AAEF,eAAO,MAAM,cAAc,cACd,MAAM,YACP,OAAO,KAChB,OAAO,CAAC,WAAW,CAwCrB,CAAC;AAEF,eAAO,MAAM,cAAc,QAAa,OAAO,CAAC,kBAAkB,CAEjE,CAAC;AAGF,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,eAAe,YACjB,MAAM,WACN,sBAAsB,GAAG,SAAS,KAC1C,OAAO,CAAC,iBAAiB,CAW3B,CAAC;AAEF,wBAAsB,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,CAEzD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAItD"}
@@ -3,6 +3,7 @@ import coinConfig from "../config";
3
3
  import { isErrorResponse, isResponseStatus, } from "./types";
4
4
  const getNodeUrl = () => coinConfig.getCoinConfig().node;
5
5
  export const NEW_ACCOUNT_ERROR_MESSAGE = "actNotFound";
6
+ const NOT_FOUND_ERROR_MESSAGE = "actMalformed";
6
7
  export const submit = async (signature) => {
7
8
  return rpcCall("submit", { tx_blob: signature });
8
9
  };
@@ -20,7 +21,9 @@ export const getAccountInfo = async (recipient, current) => {
20
21
  ],
21
22
  },
22
23
  });
23
- if (result.status !== "success" && result.error !== NEW_ACCOUNT_ERROR_MESSAGE) {
24
+ if (result.status !== "success" &&
25
+ result.error &&
26
+ ![NOT_FOUND_ERROR_MESSAGE, NEW_ACCOUNT_ERROR_MESSAGE].includes(result.error)) {
24
27
  throw new Error(`couldn't fetch account info ${recipient}`);
25
28
  }
26
29
  if (isErrorResponse(result)) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/network/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-xrp",
3
- "version": "7.11.0",
3
+ "version": "7.12.0-nightly.20260116024452",
4
4
  "description": "Ledger XRP Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -103,26 +103,27 @@
103
103
  "invariant": "^2.2.4",
104
104
  "ripple-address-codec": "^5.0.0",
105
105
  "ripple-binary-codec": "^1.3.0",
106
- "@ledgerhq/coin-framework": "^6.12.0",
107
- "@ledgerhq/cryptoassets": "^13.36.0",
108
- "@ledgerhq/devices": "8.9.0",
109
- "@ledgerhq/errors": "^6.28.0",
110
- "@ledgerhq/live-network": "^2.1.5",
111
- "@ledgerhq/types-live": "^6.92.0",
112
- "@ledgerhq/logs": "^6.13.0"
106
+ "@ledgerhq/coin-framework": "^6.13.0-nightly.20260116024452",
107
+ "@ledgerhq/cryptoassets": "^13.37.0-nightly.20260116024452",
108
+ "@ledgerhq/devices": "8.10.0-nightly.20260116024452",
109
+ "@ledgerhq/errors": "^6.29.0-nightly.20260116024452",
110
+ "@ledgerhq/types-live": "^6.93.0-nightly.20260116024452",
111
+ "@ledgerhq/logs": "^6.14.0-nightly.20260116024452",
112
+ "@ledgerhq/live-network": "^2.2.0-nightly.20260116024452"
113
113
  },
114
114
  "devDependencies": {
115
115
  "@faker-js/faker": "^8.4.1",
116
116
  "@types/invariant": "^2.2.37",
117
- "@types/jest": "^29.5.12",
117
+ "@types/jest": "30.0.0",
118
118
  "dotenv": "^16.4.5",
119
- "expect": "^27.4.6",
120
- "jest": "^29.7.0",
119
+ "expect": "30.2.0",
120
+ "jest": "30.2.0",
121
121
  "ripple-keypairs": "^2.0.0",
122
- "ts-jest": "^29.1.1",
122
+ "@swc/jest": "0.2.39",
123
+ "@swc/core": "1.15.8",
123
124
  "typescript": "^5.4.5",
124
- "@ledgerhq/disable-network-setup": "^0.1.0",
125
- "@ledgerhq/types-cryptoassets": "^7.31.0"
125
+ "@ledgerhq/disable-network-setup": "^0.2.0-nightly.20260116024452",
126
+ "@ledgerhq/types-cryptoassets": "^7.32.0-nightly.20260116024452"
126
127
  },
127
128
  "scripts": {
128
129
  "clean": "rimraf lib lib-es",
@@ -137,7 +138,7 @@
137
138
  "test": "jest",
138
139
  "test:debug": "node --inspect-brk ./node_modules/jest/bin/jest.js --runInBand",
139
140
  "test-watch": "jest --watch",
140
- "test-integ": "DOTENV_CONFIG_PATH=.env.integ.test jest --config=jest.integ.config.js",
141
+ "test-integ": "DOTENV_CONFIG_PATH=.env.integ.test jest --config=jest.integ.config.js --passWithNoTests",
141
142
  "test-integ:debug": "DOTENV_CONFIG_PATH=.env.integ.test node --inspect-brk ./node_modules/jest/bin/jest.js --runInBand --config=jest.integ.config.js",
142
143
  "typecheck": "tsc --noEmit",
143
144
  "unimported": "unimported"
@@ -143,6 +143,12 @@ describe("Xrp Api (testnet)", () => {
143
143
  // Then
144
144
  expect(result).toEqual([{ value: BigInt(0), asset: { type: "native" }, locked: 0n }]);
145
145
  });
146
+
147
+ it("returns 0 when address is not found", async () => {
148
+ const result = await api.getBalance("rhWTXC2m2gGGA9WozUaoMm6kLAVPb1tcS0");
149
+
150
+ expect(result).toEqual([{ value: BigInt(0), asset: { type: "native" }, locked: 0n }]);
151
+ });
146
152
  });
147
153
 
148
154
  describe("craftTransaction", () => {
@@ -16,6 +16,18 @@ jest.mock("../network", () => ({
16
16
  mockGetTransactions(address, options),
17
17
  }));
18
18
 
19
+ // Module-level mocks for logic functions
20
+ const mockCraftTransaction = jest.fn();
21
+ const mockGetNextValidSequence = jest.fn();
22
+ const mockEstimateFees = jest.fn();
23
+
24
+ jest.mock("../logic", () => ({
25
+ ...jest.requireActual("../logic"),
26
+ craftTransaction: (...args: unknown[]) => mockCraftTransaction(...args),
27
+ getNextValidSequence: (...args: unknown[]) => mockGetNextValidSequence(...args),
28
+ estimateFees: (...args: unknown[]) => mockEstimateFees(...args),
29
+ }));
30
+
19
31
  describe("listOperations", () => {
20
32
  const api = createApi({ node: "https://localhost" });
21
33
 
@@ -271,18 +283,15 @@ describe("listOperations", () => {
271
283
  describe("Testing craftTransaction function", () => {
272
284
  const DEFAULT_ESTIMATED_FEES = 100n;
273
285
  const api = createApi({ node: "https://localhost" });
274
- const logicCraftTransactionSpy = jest
275
- .spyOn(LogicFunctions, "craftTransaction")
276
- .mockImplementation((_address, _transaction, _publicKey) => {
286
+
287
+ beforeAll(() => {
288
+ mockCraftTransaction.mockImplementation((_address, _transaction, _publicKey) => {
277
289
  return Promise.resolve({ xrplTransaction: {} as never, serializedTransaction: "" });
278
290
  });
279
291
 
280
- beforeAll(() => {
281
- jest
282
- .spyOn(LogicFunctions, "getNextValidSequence")
283
- .mockImplementation(_address => Promise.resolve(0));
292
+ mockGetNextValidSequence.mockImplementation(_address => Promise.resolve(0));
284
293
 
285
- jest.spyOn(LogicFunctions, "estimateFees").mockImplementation(_networkInfo => {
294
+ mockEstimateFees.mockImplementation(_networkInfo => {
286
295
  return Promise.resolve({
287
296
  networkInfo: {} as NetworkInfo,
288
297
  fees: DEFAULT_ESTIMATED_FEES,
@@ -290,6 +299,10 @@ describe("Testing craftTransaction function", () => {
290
299
  });
291
300
  });
292
301
 
302
+ afterEach(() => {
303
+ mockCraftTransaction.mockClear();
304
+ });
305
+
293
306
  it("should use custom user fees when user provides it for crafting a transaction", async () => {
294
307
  const customFees = 99n;
295
308
  await api.craftTransaction(
@@ -299,7 +312,7 @@ describe("Testing craftTransaction function", () => {
299
312
  },
300
313
  );
301
314
 
302
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
315
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
303
316
  expect.any(Object),
304
317
  expect.objectContaining({
305
318
  fees: customFees,
@@ -314,7 +327,7 @@ describe("Testing craftTransaction function", () => {
314
327
  sender: "foo",
315
328
  } as SendTransactionIntent<XrpMapMemo>);
316
329
 
317
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
330
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
318
331
  expect.any(Object),
319
332
  expect.objectContaining({
320
333
  fees: DEFAULT_ESTIMATED_FEES,
@@ -330,7 +343,7 @@ describe("Testing craftTransaction function", () => {
330
343
  senderPublicKey: "bar",
331
344
  } as SendTransactionIntent<XrpMapMemo>);
332
345
 
333
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
346
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
334
347
  expect.any(Object),
335
348
  expect.any(Object),
336
349
  "bar",
@@ -347,7 +360,7 @@ describe("Testing craftTransaction function", () => {
347
360
  },
348
361
  } as SendTransactionIntent<XrpMapMemo>);
349
362
 
350
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
363
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
351
364
  expect.any(Object),
352
365
  expect.objectContaining({
353
366
  // NOTE: before
@@ -364,7 +377,7 @@ describe("Testing craftTransaction function", () => {
364
377
  sender: "foo",
365
378
  } as SendTransactionIntent<XrpMapMemo>);
366
379
 
367
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
380
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
368
381
  expect.any(Object),
369
382
  expect.objectContaining({
370
383
  memos: undefined,
@@ -383,7 +396,7 @@ describe("Testing craftTransaction function", () => {
383
396
  },
384
397
  } as SendTransactionIntent<XrpMapMemo>);
385
398
 
386
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
399
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
387
400
  expect.any(Object),
388
401
  expect.objectContaining({
389
402
  memos: undefined,
@@ -402,7 +415,7 @@ describe("Testing craftTransaction function", () => {
402
415
  },
403
416
  } as SendTransactionIntent<XrpMapMemo>);
404
417
 
405
- expect(logicCraftTransactionSpy).toHaveBeenCalledWith(
418
+ expect(mockCraftTransaction).toHaveBeenCalledWith(
406
419
  expect.any(Object),
407
420
  expect.objectContaining({
408
421
  destinationTag: 1337, // logic should convert `value: string` -> `number`
@@ -1,10 +1,11 @@
1
1
  import { validateIntent } from "./validateIntent";
2
- import * as utils from "./utils";
3
2
 
4
3
  const mockGetBalance = jest.fn();
5
4
 
6
5
  const mockGetServerInfos = jest.fn();
7
6
 
7
+ const RECIPIENT_NEW = "rDKsbvy9uaNpPtvVFraJyNGfjvTw8xivgK";
8
+
8
9
  jest.mock("./getBalance", () => ({
9
10
  getBalance: () => mockGetBalance(),
10
11
  }));
@@ -13,18 +14,20 @@ jest.mock("../network", () => ({
13
14
  getServerInfos: () => mockGetServerInfos(),
14
15
  }));
15
16
 
16
- jest.spyOn(utils, "cachedRecipientIsNew").mockImplementation(addr => {
17
- if (addr === RECIPIENT_NEW) {
18
- return Promise.resolve(true);
19
- }
20
- return Promise.resolve(false);
21
- });
17
+ jest.mock("./utils", () => ({
18
+ ...jest.requireActual("./utils"),
19
+ cachedRecipientIsNew: jest.fn((addr: string) => {
20
+ if (addr === RECIPIENT_NEW) {
21
+ return Promise.resolve(true);
22
+ }
23
+ return Promise.resolve(false);
24
+ }),
25
+ }));
22
26
 
23
27
  const reserveBase = 10_000_000n; // 10 XRP (drops)
24
28
 
25
29
  const SENDER = "rPSCfmnX3t9jQJG5RNcZtSaP5UhExZDue4";
26
30
  const RECIPIENT = "rPT1Sjq2YGrBMTttX4GZHjKu9dyfzbpAYe";
27
- const RECIPIENT_NEW = "rDKsbvy9uaNpPtvVFraJyNGfjvTw8xivgK";
28
31
 
29
32
  describe("validateIntent", () => {
30
33
  afterEach(() => {
@@ -16,6 +16,7 @@ import {
16
16
  const getNodeUrl = () => coinConfig.getCoinConfig().node;
17
17
 
18
18
  export const NEW_ACCOUNT_ERROR_MESSAGE = "actNotFound";
19
+ const NOT_FOUND_ERROR_MESSAGE = "actMalformed";
19
20
 
20
21
  export const submit = async (signature: string): Promise<SubmitReponse> => {
21
22
  return rpcCall<SubmitReponse>("submit", { tx_blob: signature });
@@ -41,7 +42,11 @@ export const getAccountInfo = async (
41
42
  },
42
43
  });
43
44
 
44
- if (result.status !== "success" && result.error !== NEW_ACCOUNT_ERROR_MESSAGE) {
45
+ if (
46
+ result.status !== "success" &&
47
+ result.error &&
48
+ ![NOT_FOUND_ERROR_MESSAGE, NEW_ACCOUNT_ERROR_MESSAGE].includes(result.error)
49
+ ) {
45
50
  throw new Error(`couldn't fetch account info ${recipient}`);
46
51
  }
47
52