@ledgerhq/coin-casper 1.7.3 → 2.0.0-next.0

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 (278) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/.unimportedrc.json +11 -35
  3. package/CHANGELOG.md +14 -0
  4. package/jest.config.js +2 -5
  5. package/lib/api/index.d.ts +8 -6
  6. package/lib/api/index.d.ts.map +1 -1
  7. package/lib/api/index.integ.test.js +12 -3
  8. package/lib/api/index.integ.test.js.map +1 -1
  9. package/lib/api/index.js +53 -91
  10. package/lib/api/index.js.map +1 -1
  11. package/lib/api/index.test.d.ts +2 -0
  12. package/lib/api/index.test.d.ts.map +1 -0
  13. package/lib/api/index.test.js +274 -0
  14. package/lib/api/index.test.js.map +1 -0
  15. package/lib/api/types.d.ts +2 -67
  16. package/lib/api/types.d.ts.map +1 -1
  17. package/lib/bridge/bridgeHelpers/accountShape.d.ts.map +1 -1
  18. package/lib/bridge/bridgeHelpers/accountShape.js +5 -7
  19. package/lib/bridge/bridgeHelpers/accountShape.js.map +1 -1
  20. package/lib/bridge/bridgeHelpers/accountShape.test.d.ts +2 -0
  21. package/lib/bridge/bridgeHelpers/accountShape.test.d.ts.map +1 -0
  22. package/lib/bridge/bridgeHelpers/accountShape.test.js +94 -0
  23. package/lib/bridge/bridgeHelpers/accountShape.test.js.map +1 -0
  24. package/lib/bridge/bridgeHelpers/addresses.d.ts +3 -9
  25. package/lib/bridge/bridgeHelpers/addresses.d.ts.map +1 -1
  26. package/lib/bridge/bridgeHelpers/addresses.js +5 -62
  27. package/lib/bridge/bridgeHelpers/addresses.js.map +1 -1
  28. package/lib/bridge/bridgeHelpers/txn.d.ts +2 -2
  29. package/lib/bridge/bridgeHelpers/txn.d.ts.map +1 -1
  30. package/lib/bridge/bridgeHelpers/txn.js +9 -11
  31. package/lib/bridge/bridgeHelpers/txn.js.map +1 -1
  32. package/lib/bridge/bridgeHelpers/txn.test.d.ts +2 -0
  33. package/lib/bridge/bridgeHelpers/txn.test.d.ts.map +1 -0
  34. package/lib/bridge/bridgeHelpers/txn.test.js +306 -0
  35. package/lib/bridge/bridgeHelpers/txn.test.js.map +1 -0
  36. package/lib/bridge/broadcast.d.ts.map +1 -1
  37. package/lib/bridge/broadcast.js +7 -6
  38. package/lib/bridge/broadcast.js.map +1 -1
  39. package/lib/bridge/broadcast.test.d.ts +2 -0
  40. package/lib/bridge/broadcast.test.d.ts.map +1 -0
  41. package/lib/bridge/broadcast.test.js +72 -0
  42. package/lib/bridge/broadcast.test.js.map +1 -0
  43. package/lib/bridge/buildOptimisticOperation.d.ts.map +1 -1
  44. package/lib/bridge/buildOptimisticOperation.js +2 -0
  45. package/lib/bridge/buildOptimisticOperation.js.map +1 -1
  46. package/lib/bridge/buildOptimisticOperation.test.d.ts +2 -0
  47. package/lib/bridge/buildOptimisticOperation.test.d.ts.map +1 -0
  48. package/lib/bridge/buildOptimisticOperation.test.js +76 -0
  49. package/lib/bridge/buildOptimisticOperation.test.js.map +1 -0
  50. package/lib/bridge/createTransaction.test.d.ts +2 -0
  51. package/lib/bridge/createTransaction.test.d.ts.map +1 -0
  52. package/lib/bridge/createTransaction.test.js +41 -0
  53. package/lib/bridge/createTransaction.test.js.map +1 -0
  54. package/lib/bridge/deviceTransactionConfig.d.ts.map +1 -1
  55. package/lib/bridge/deviceTransactionConfig.js +13 -0
  56. package/lib/bridge/deviceTransactionConfig.js.map +1 -1
  57. package/lib/bridge/deviceTransactionConfig.test.d.ts +2 -0
  58. package/lib/bridge/deviceTransactionConfig.test.d.ts.map +1 -0
  59. package/lib/bridge/deviceTransactionConfig.test.js +148 -0
  60. package/lib/bridge/deviceTransactionConfig.test.js.map +1 -0
  61. package/lib/bridge/estimateMaxSpendable.test.d.ts +2 -0
  62. package/lib/bridge/estimateMaxSpendable.test.d.ts.map +1 -0
  63. package/lib/bridge/estimateMaxSpendable.test.js +133 -0
  64. package/lib/bridge/estimateMaxSpendable.test.js.map +1 -0
  65. package/lib/bridge/getTransactionStatus.test.d.ts +2 -0
  66. package/lib/bridge/getTransactionStatus.test.d.ts.map +1 -0
  67. package/lib/bridge/getTransactionStatus.test.js +214 -0
  68. package/lib/bridge/getTransactionStatus.test.js.map +1 -0
  69. package/lib/bridge/index.d.ts +2 -1
  70. package/lib/bridge/index.d.ts.map +1 -1
  71. package/lib/bridge/index.js +3 -1
  72. package/lib/bridge/index.js.map +1 -1
  73. package/lib/bridge/prepareTransaction.js +1 -1
  74. package/lib/bridge/prepareTransaction.js.map +1 -1
  75. package/lib/bridge/prepareTransaction.test.d.ts +2 -0
  76. package/lib/bridge/prepareTransaction.test.d.ts.map +1 -0
  77. package/lib/bridge/prepareTransaction.test.js +159 -0
  78. package/lib/bridge/prepareTransaction.test.js.map +1 -0
  79. package/lib/bridge/signOperation.d.ts.map +1 -1
  80. package/lib/bridge/signOperation.js +14 -12
  81. package/lib/bridge/signOperation.js.map +1 -1
  82. package/lib/bridge/transaction.test.d.ts +2 -0
  83. package/lib/bridge/transaction.test.d.ts.map +1 -0
  84. package/lib/bridge/transaction.test.js +179 -0
  85. package/lib/bridge/transaction.test.js.map +1 -0
  86. package/lib/common-logic/utils.additional.test.d.ts +2 -0
  87. package/lib/common-logic/utils.additional.test.d.ts.map +1 -0
  88. package/lib/common-logic/utils.additional.test.js +58 -0
  89. package/lib/common-logic/utils.additional.test.js.map +1 -0
  90. package/lib/common-logic/utils.unit.test.js +6 -4
  91. package/lib/common-logic/utils.unit.test.js.map +1 -1
  92. package/lib/config.d.ts +10 -0
  93. package/lib/config.d.ts.map +1 -0
  94. package/lib/config.js +16 -0
  95. package/lib/config.js.map +1 -0
  96. package/lib/consts.d.ts +3 -0
  97. package/lib/consts.d.ts.map +1 -1
  98. package/lib/consts.js +5 -1
  99. package/lib/consts.js.map +1 -1
  100. package/lib/hw-signMessage.test.d.ts +2 -0
  101. package/lib/hw-signMessage.test.d.ts.map +1 -0
  102. package/lib/hw-signMessage.test.js +80 -0
  103. package/lib/hw-signMessage.test.js.map +1 -0
  104. package/lib/signer/getAddress.js +1 -1
  105. package/lib/signer/getAddress.js.map +1 -1
  106. package/lib/signer/getAddress.test.d.ts +2 -0
  107. package/lib/signer/getAddress.test.d.ts.map +1 -0
  108. package/lib/signer/getAddress.test.js +133 -0
  109. package/lib/signer/getAddress.test.js.map +1 -0
  110. package/lib/test/bot-specs.d.ts.map +1 -1
  111. package/lib/test/bot-specs.js +1 -0
  112. package/lib/test/bot-specs.js.map +1 -1
  113. package/lib/test/fixtures.d.ts +131 -0
  114. package/lib/test/fixtures.d.ts.map +1 -0
  115. package/lib/test/fixtures.js +395 -0
  116. package/lib/test/fixtures.js.map +1 -0
  117. package/lib/test/index.d.ts +2 -0
  118. package/lib/test/index.d.ts.map +1 -1
  119. package/lib/test/index.js +2 -0
  120. package/lib/test/index.js.map +1 -1
  121. package/lib/test/speculos-deviceActions.d.ts.map +1 -1
  122. package/lib/test/speculos-deviceActions.js +4 -3
  123. package/lib/test/speculos-deviceActions.js.map +1 -1
  124. package/lib-es/api/index.d.ts +8 -6
  125. package/lib-es/api/index.d.ts.map +1 -1
  126. package/lib-es/api/index.integ.test.js +13 -4
  127. package/lib-es/api/index.integ.test.js.map +1 -1
  128. package/lib-es/api/index.js +51 -90
  129. package/lib-es/api/index.js.map +1 -1
  130. package/lib-es/api/index.test.d.ts +2 -0
  131. package/lib-es/api/index.test.d.ts.map +1 -0
  132. package/lib-es/api/index.test.js +269 -0
  133. package/lib-es/api/index.test.js.map +1 -0
  134. package/lib-es/api/types.d.ts +2 -67
  135. package/lib-es/api/types.d.ts.map +1 -1
  136. package/lib-es/bridge/bridgeHelpers/accountShape.d.ts.map +1 -1
  137. package/lib-es/bridge/bridgeHelpers/accountShape.js +6 -8
  138. package/lib-es/bridge/bridgeHelpers/accountShape.js.map +1 -1
  139. package/lib-es/bridge/bridgeHelpers/accountShape.test.d.ts +2 -0
  140. package/lib-es/bridge/bridgeHelpers/accountShape.test.d.ts.map +1 -0
  141. package/lib-es/bridge/bridgeHelpers/accountShape.test.js +89 -0
  142. package/lib-es/bridge/bridgeHelpers/accountShape.test.js.map +1 -0
  143. package/lib-es/bridge/bridgeHelpers/addresses.d.ts +3 -9
  144. package/lib-es/bridge/bridgeHelpers/addresses.d.ts.map +1 -1
  145. package/lib-es/bridge/bridgeHelpers/addresses.js +5 -60
  146. package/lib-es/bridge/bridgeHelpers/addresses.js.map +1 -1
  147. package/lib-es/bridge/bridgeHelpers/txn.d.ts +2 -2
  148. package/lib-es/bridge/bridgeHelpers/txn.d.ts.map +1 -1
  149. package/lib-es/bridge/bridgeHelpers/txn.js +10 -12
  150. package/lib-es/bridge/bridgeHelpers/txn.js.map +1 -1
  151. package/lib-es/bridge/bridgeHelpers/txn.test.d.ts +2 -0
  152. package/lib-es/bridge/bridgeHelpers/txn.test.d.ts.map +1 -0
  153. package/lib-es/bridge/bridgeHelpers/txn.test.js +278 -0
  154. package/lib-es/bridge/bridgeHelpers/txn.test.js.map +1 -0
  155. package/lib-es/bridge/broadcast.d.ts.map +1 -1
  156. package/lib-es/bridge/broadcast.js +8 -7
  157. package/lib-es/bridge/broadcast.js.map +1 -1
  158. package/lib-es/bridge/broadcast.test.d.ts +2 -0
  159. package/lib-es/bridge/broadcast.test.d.ts.map +1 -0
  160. package/lib-es/bridge/broadcast.test.js +70 -0
  161. package/lib-es/bridge/broadcast.test.js.map +1 -0
  162. package/lib-es/bridge/buildOptimisticOperation.d.ts.map +1 -1
  163. package/lib-es/bridge/buildOptimisticOperation.js +2 -0
  164. package/lib-es/bridge/buildOptimisticOperation.js.map +1 -1
  165. package/lib-es/bridge/buildOptimisticOperation.test.d.ts +2 -0
  166. package/lib-es/bridge/buildOptimisticOperation.test.d.ts.map +1 -0
  167. package/lib-es/bridge/buildOptimisticOperation.test.js +74 -0
  168. package/lib-es/bridge/buildOptimisticOperation.test.js.map +1 -0
  169. package/lib-es/bridge/createTransaction.test.d.ts +2 -0
  170. package/lib-es/bridge/createTransaction.test.d.ts.map +1 -0
  171. package/lib-es/bridge/createTransaction.test.js +36 -0
  172. package/lib-es/bridge/createTransaction.test.js.map +1 -0
  173. package/lib-es/bridge/deviceTransactionConfig.d.ts.map +1 -1
  174. package/lib-es/bridge/deviceTransactionConfig.js +13 -0
  175. package/lib-es/bridge/deviceTransactionConfig.js.map +1 -1
  176. package/lib-es/bridge/deviceTransactionConfig.test.d.ts +2 -0
  177. package/lib-es/bridge/deviceTransactionConfig.test.d.ts.map +1 -0
  178. package/lib-es/bridge/deviceTransactionConfig.test.js +143 -0
  179. package/lib-es/bridge/deviceTransactionConfig.test.js.map +1 -0
  180. package/lib-es/bridge/estimateMaxSpendable.test.d.ts +2 -0
  181. package/lib-es/bridge/estimateMaxSpendable.test.d.ts.map +1 -0
  182. package/lib-es/bridge/estimateMaxSpendable.test.js +131 -0
  183. package/lib-es/bridge/estimateMaxSpendable.test.js.map +1 -0
  184. package/lib-es/bridge/getTransactionStatus.test.d.ts +2 -0
  185. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +1 -0
  186. package/lib-es/bridge/getTransactionStatus.test.js +212 -0
  187. package/lib-es/bridge/getTransactionStatus.test.js.map +1 -0
  188. package/lib-es/bridge/index.d.ts +2 -1
  189. package/lib-es/bridge/index.d.ts.map +1 -1
  190. package/lib-es/bridge/index.js +3 -1
  191. package/lib-es/bridge/index.js.map +1 -1
  192. package/lib-es/bridge/prepareTransaction.js +1 -1
  193. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  194. package/lib-es/bridge/prepareTransaction.test.d.ts +2 -0
  195. package/lib-es/bridge/prepareTransaction.test.d.ts.map +1 -0
  196. package/lib-es/bridge/prepareTransaction.test.js +157 -0
  197. package/lib-es/bridge/prepareTransaction.test.js.map +1 -0
  198. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  199. package/lib-es/bridge/signOperation.js +16 -14
  200. package/lib-es/bridge/signOperation.js.map +1 -1
  201. package/lib-es/bridge/transaction.test.d.ts +2 -0
  202. package/lib-es/bridge/transaction.test.d.ts.map +1 -0
  203. package/lib-es/bridge/transaction.test.js +154 -0
  204. package/lib-es/bridge/transaction.test.js.map +1 -0
  205. package/lib-es/common-logic/utils.additional.test.d.ts +2 -0
  206. package/lib-es/common-logic/utils.additional.test.d.ts.map +1 -0
  207. package/lib-es/common-logic/utils.additional.test.js +56 -0
  208. package/lib-es/common-logic/utils.additional.test.js.map +1 -0
  209. package/lib-es/common-logic/utils.unit.test.js +7 -5
  210. package/lib-es/common-logic/utils.unit.test.js.map +1 -1
  211. package/lib-es/config.d.ts +10 -0
  212. package/lib-es/config.d.ts.map +1 -0
  213. package/lib-es/config.js +11 -0
  214. package/lib-es/config.js.map +1 -0
  215. package/lib-es/consts.d.ts +3 -0
  216. package/lib-es/consts.d.ts.map +1 -1
  217. package/lib-es/consts.js +4 -0
  218. package/lib-es/consts.js.map +1 -1
  219. package/lib-es/hw-signMessage.test.d.ts +2 -0
  220. package/lib-es/hw-signMessage.test.d.ts.map +1 -0
  221. package/lib-es/hw-signMessage.test.js +78 -0
  222. package/lib-es/hw-signMessage.test.js.map +1 -0
  223. package/lib-es/signer/getAddress.js +2 -2
  224. package/lib-es/signer/getAddress.js.map +1 -1
  225. package/lib-es/signer/getAddress.test.d.ts +2 -0
  226. package/lib-es/signer/getAddress.test.d.ts.map +1 -0
  227. package/lib-es/signer/getAddress.test.js +105 -0
  228. package/lib-es/signer/getAddress.test.js.map +1 -0
  229. package/lib-es/test/bot-specs.d.ts.map +1 -1
  230. package/lib-es/test/bot-specs.js +1 -0
  231. package/lib-es/test/bot-specs.js.map +1 -1
  232. package/lib-es/test/fixtures.d.ts +131 -0
  233. package/lib-es/test/fixtures.d.ts.map +1 -0
  234. package/lib-es/test/fixtures.js +381 -0
  235. package/lib-es/test/fixtures.js.map +1 -0
  236. package/lib-es/test/index.d.ts +2 -0
  237. package/lib-es/test/index.d.ts.map +1 -1
  238. package/lib-es/test/index.js +2 -0
  239. package/lib-es/test/index.js.map +1 -1
  240. package/lib-es/test/speculos-deviceActions.d.ts.map +1 -1
  241. package/lib-es/test/speculos-deviceActions.js +5 -4
  242. package/lib-es/test/speculos-deviceActions.js.map +1 -1
  243. package/package.json +17 -12
  244. package/src/api/index.integ.test.ts +14 -4
  245. package/src/api/index.test.ts +386 -0
  246. package/src/api/index.ts +59 -117
  247. package/src/api/types.ts +2 -75
  248. package/src/bridge/bridgeHelpers/accountShape.test.ts +122 -0
  249. package/src/bridge/bridgeHelpers/accountShape.ts +7 -9
  250. package/src/bridge/bridgeHelpers/addresses.ts +6 -73
  251. package/src/bridge/bridgeHelpers/txn.test.ts +339 -0
  252. package/src/bridge/bridgeHelpers/txn.ts +18 -18
  253. package/src/bridge/broadcast.test.ts +89 -0
  254. package/src/bridge/broadcast.ts +9 -7
  255. package/src/bridge/buildOptimisticOperation.test.ts +89 -0
  256. package/src/bridge/buildOptimisticOperation.ts +2 -0
  257. package/src/bridge/createTransaction.test.ts +43 -0
  258. package/src/bridge/deviceTransactionConfig.test.ts +171 -0
  259. package/src/bridge/deviceTransactionConfig.ts +14 -0
  260. package/src/bridge/estimateMaxSpendable.test.ts +155 -0
  261. package/src/bridge/getTransactionStatus.test.ts +264 -0
  262. package/src/bridge/index.ts +8 -1
  263. package/src/bridge/prepareTransaction.test.ts +174 -0
  264. package/src/bridge/prepareTransaction.ts +1 -1
  265. package/src/bridge/signOperation.ts +16 -25
  266. package/src/bridge/transaction.test.ts +182 -0
  267. package/src/common-logic/utils.additional.test.ts +75 -0
  268. package/src/common-logic/utils.unit.test.ts +9 -7
  269. package/src/config.ts +22 -0
  270. package/src/consts.ts +5 -0
  271. package/src/hw-signMessage.test.ts +123 -0
  272. package/src/signer/getAddress.test.ts +134 -0
  273. package/src/signer/getAddress.ts +2 -2
  274. package/src/test/bot-specs.ts +1 -0
  275. package/src/test/fixtures.ts +448 -0
  276. package/src/test/index.ts +2 -0
  277. package/src/test/speculos-deviceActions.ts +6 -4
  278. package/tsconfig.json +1 -4
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const buildOptimisticOperation_1 = require("./buildOptimisticOperation");
4
+ const addresses_1 = require("./bridgeHelpers/addresses");
5
+ const operation_1 = require("@ledgerhq/coin-framework/operation");
6
+ const fixtures_1 = require("../test/fixtures");
7
+ // Mock dependencies
8
+ jest.mock("./bridgeHelpers/addresses", () => ({
9
+ getAddress: jest.fn(),
10
+ }));
11
+ jest.mock("@ledgerhq/coin-framework/operation", () => ({
12
+ encodeOperationId: jest.fn(),
13
+ }));
14
+ describe("buildOptimisticOperation", () => {
15
+ // Create test fixtures using helper functions
16
+ const mockAccount = (0, fixtures_1.createMockAccount)();
17
+ const mockTransaction = (0, fixtures_1.createMockTransaction)();
18
+ const mockHash = "mockedTransactionHash";
19
+ const mockAddress = "01abcdef1234567890";
20
+ const mockOperationId = "mockOperationId";
21
+ beforeEach(() => {
22
+ jest.clearAllMocks();
23
+ addresses_1.getAddress.mockReturnValue({ address: mockAddress });
24
+ operation_1.encodeOperationId.mockReturnValue(mockOperationId);
25
+ });
26
+ test("should build an optimistic operation for an outgoing transaction", () => {
27
+ const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(mockAccount, mockTransaction, mockHash);
28
+ expect(addresses_1.getAddress).toHaveBeenCalledWith(mockAccount);
29
+ expect(operation_1.encodeOperationId).toHaveBeenCalledWith(mockAccount.id, mockHash, "OUT");
30
+ expect(operation).toEqual({
31
+ id: mockOperationId,
32
+ hash: mockHash,
33
+ type: "OUT",
34
+ senders: [mockAddress],
35
+ recipients: [mockTransaction.recipient],
36
+ accountId: mockAccount.id,
37
+ value: mockTransaction.amount.plus(mockTransaction.fees),
38
+ fee: mockTransaction.fees,
39
+ blockHash: null,
40
+ blockHeight: null,
41
+ date: expect.any(Date),
42
+ extra: {
43
+ transferId: mockTransaction.transferId,
44
+ },
45
+ nftOperations: [],
46
+ subOperations: [],
47
+ });
48
+ });
49
+ test("should build an optimistic operation with a custom operation type", () => {
50
+ const customType = "IN";
51
+ const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(mockAccount, mockTransaction, mockHash, customType);
52
+ expect(operation_1.encodeOperationId).toHaveBeenCalledWith(mockAccount.id, mockHash, customType);
53
+ expect(operation.type).toBe(customType);
54
+ });
55
+ test("should include transferId in the extra field when present", () => {
56
+ const txWithTransferId = {
57
+ ...mockTransaction,
58
+ transferId: fixtures_1.TEST_TRANSFER_IDS.VALID,
59
+ };
60
+ const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(mockAccount, txWithTransferId, mockHash);
61
+ expect(operation.extra).toEqual({
62
+ transferId: fixtures_1.TEST_TRANSFER_IDS.VALID,
63
+ });
64
+ });
65
+ test("should handle transaction without transferId", () => {
66
+ const txWithoutTransferId = {
67
+ ...mockTransaction,
68
+ transferId: undefined,
69
+ };
70
+ const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(mockAccount, txWithoutTransferId, mockHash);
71
+ expect(operation.extra).toEqual({
72
+ transferId: undefined,
73
+ });
74
+ });
75
+ });
76
+ //# sourceMappingURL=buildOptimisticOperation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildOptimisticOperation.test.js","sourceRoot":"","sources":["../../src/bridge/buildOptimisticOperation.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createTransaction.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTransaction.test.d.ts","sourceRoot":"","sources":["../../src/bridge/createTransaction.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
7
+ const createTransaction_1 = require("./createTransaction");
8
+ describe("createTransaction", () => {
9
+ it("should create a transaction with default values", () => {
10
+ const transaction = (0, createTransaction_1.createTransaction)({});
11
+ const expectedTransaction = {
12
+ family: "casper",
13
+ amount: new bignumber_js_1.default(0),
14
+ fees: new bignumber_js_1.default(0),
15
+ recipient: "",
16
+ useAllAmount: false,
17
+ };
18
+ expect(transaction).toEqual(expectedTransaction);
19
+ });
20
+ it("should create a transaction with the correct family", () => {
21
+ const transaction = (0, createTransaction_1.createTransaction)({});
22
+ expect(transaction.family).toBe("casper");
23
+ });
24
+ it("should create a transaction with default amount set to zero", () => {
25
+ const transaction = (0, createTransaction_1.createTransaction)({});
26
+ expect(transaction.amount.isEqualTo(new bignumber_js_1.default(0))).toBe(true);
27
+ });
28
+ it("should create a transaction with default fees set to zero", () => {
29
+ const transaction = (0, createTransaction_1.createTransaction)({});
30
+ expect(transaction.fees.isEqualTo(new bignumber_js_1.default(0))).toBe(true);
31
+ });
32
+ it("should create a transaction with empty recipient", () => {
33
+ const transaction = (0, createTransaction_1.createTransaction)({});
34
+ expect(transaction.recipient).toBe("");
35
+ });
36
+ it("should create a transaction with useAllAmount set to false", () => {
37
+ const transaction = (0, createTransaction_1.createTransaction)({});
38
+ expect(transaction.useAllAmount).toBe(false);
39
+ });
40
+ });
41
+ //# sourceMappingURL=createTransaction.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTransaction.test.js","sourceRoot":"","sources":["../../src/bridge/createTransaction.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAqC;AACrC,2DAAwD;AAIxD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAA0B,CAAC,CAAC;QAClE,MAAM,mBAAmB,GAAgB;YACvC,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;YACxB,IAAI,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;YACtB,SAAS,EAAE,EAAE;YACb,YAAY,EAAE,KAAK;SACpB,CAAC;QACF,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAA0B,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAA0B,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAA0B,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAA0B,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,WAAW,GAAG,IAAA,qCAAiB,EAAC,EAA0B,CAAC,CAAC;QAClE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"deviceTransactionConfig.d.ts","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,KAAK,sBAAsB,GAAG,4BAA4B,GAAG,2BAA2B,CAAC;AAEzF,iBAAS,0BAA0B,CAAC,EAClC,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAqBhC;AAED,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"deviceTransactionConfig.d.ts","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,KAAK,sBAAsB,GAAG,4BAA4B,GAAG,2BAA2B,CAAC;AAEzF,iBAAS,0BAA0B,CAAC,EAClC,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,WAAW,CAAC;IACrB,aAAa,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAkChC;AAED,eAAe,0BAA0B,CAAC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const logs_1 = require("@ledgerhq/logs");
4
4
  const common_logic_1 = require("../common-logic");
5
+ const consts_1 = require("../consts");
5
6
  function getDeviceTransactionConfig({ transaction, }) {
6
7
  const fields = [];
7
8
  fields.push({
@@ -9,6 +10,11 @@ function getDeviceTransactionConfig({ transaction, }) {
9
10
  label: "Type",
10
11
  value: (0, common_logic_1.methodToString)(0),
11
12
  });
13
+ fields.push({
14
+ type: "text",
15
+ label: "Chain ID",
16
+ value: consts_1.CASPER_NETWORK,
17
+ });
12
18
  fields.push({
13
19
  type: "casper.extendedAmount",
14
20
  label: "Fee",
@@ -19,6 +25,13 @@ function getDeviceTransactionConfig({ transaction, }) {
19
25
  label: "Amount",
20
26
  value: transaction.amount,
21
27
  });
28
+ if (transaction.transferId) {
29
+ fields.push({
30
+ type: "text",
31
+ label: "Transfer ID",
32
+ value: transaction.transferId,
33
+ });
34
+ }
22
35
  (0, logs_1.log)("debug", `Transaction config ${JSON.stringify(fields)}`);
23
36
  return fields;
24
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deviceTransactionConfig.js","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.ts"],"names":[],"mappings":";;AAAA,yCAAqC;AAIrC,kDAAiD;AAWjD,SAAS,0BAA0B,CAAC,EAClC,WAAW,GAMZ;IACC,MAAM,MAAM,GAAkC,EAAE,CAAC;IACjD,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,IAAA,6BAAc,EAAC,CAAC,CAAC;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,uBAAuB;QAC7B,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,WAAW,CAAC,IAAI;KACxB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,uBAAuB;QAC7B,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B,CAAC,CAAC;IAEH,IAAA,UAAG,EAAC,OAAO,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAE7D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kBAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"deviceTransactionConfig.js","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.ts"],"names":[],"mappings":";;AAAA,yCAAqC;AAIrC,kDAAiD;AAEjD,sCAA2C;AAU3C,SAAS,0BAA0B,CAAC,EAClC,WAAW,GAMZ;IACC,MAAM,MAAM,GAAkC,EAAE,CAAC;IACjD,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,IAAA,6BAAc,EAAC,CAAC,CAAC;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,uBAAc;KACtB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,uBAAuB;QAC7B,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,WAAW,CAAC,IAAI;KACxB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,uBAAuB;QAC7B,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,WAAW,CAAC,MAAM;KAC1B,CAAC,CAAC;IAEH,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,WAAW,CAAC,UAAU;SAC9B,CAAC,CAAC;IACL,CAAC;IAED,IAAA,UAAG,EAAC,OAAO,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAE7D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kBAAe,0BAA0B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=deviceTransactionConfig.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deviceTransactionConfig.test.d.ts","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const logs_1 = require("@ledgerhq/logs");
7
+ const deviceTransactionConfig_1 = __importDefault(require("./deviceTransactionConfig"));
8
+ const fixtures_1 = require("../test/fixtures");
9
+ const consts_1 = require("../consts");
10
+ const common_logic_1 = require("../common-logic");
11
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
12
+ // Mock the log function to prevent console output during tests
13
+ jest.mock("@ledgerhq/logs", () => ({
14
+ log: jest.fn(),
15
+ }));
16
+ /**
17
+ * Tests for the getDeviceTransactionConfig function
18
+ * Validates the correct display fields are generated for Ledger devices
19
+ */
20
+ describe("getDeviceTransactionConfig", () => {
21
+ // Common test objects
22
+ const MOCK_AMOUNT = new bignumber_js_1.default("1000000000"); // 1 CSPR
23
+ const TRANSFER_ID = "12345678";
24
+ /**
25
+ * Creates a mock transaction status for testing
26
+ * @returns A valid TransactionStatus object
27
+ */
28
+ const createMockStatus = () => ({
29
+ errors: {},
30
+ warnings: {},
31
+ estimatedFees: new bignumber_js_1.default(0),
32
+ amount: new bignumber_js_1.default(0),
33
+ totalSpent: new bignumber_js_1.default(0),
34
+ });
35
+ /**
36
+ * Helper to get config fields
37
+ */
38
+ const getConfigFields = (transaction, account = (0, fixtures_1.createMockAccount)()) => (0, deviceTransactionConfig_1.default)({
39
+ account,
40
+ parentAccount: null,
41
+ transaction,
42
+ status: createMockStatus(),
43
+ });
44
+ beforeEach(() => {
45
+ jest.clearAllMocks();
46
+ });
47
+ test("should display chain ID, transaction type and amount fields for standard transactions", () => {
48
+ // Create mock transaction
49
+ const mockTransaction = (0, fixtures_1.createMockTransaction)({
50
+ amount: MOCK_AMOUNT,
51
+ });
52
+ // Get display fields
53
+ const fields = getConfigFields(mockTransaction);
54
+ // Verify the results
55
+ expect(fields).toHaveLength(4);
56
+ // Check Type field
57
+ expect(fields[0]).toEqual({
58
+ type: "text",
59
+ label: "Type",
60
+ value: (0, common_logic_1.methodToString)(0), // 0 = "transfer"
61
+ });
62
+ // Check Chain ID field
63
+ expect(fields[1]).toEqual({
64
+ type: "text",
65
+ label: "Chain ID",
66
+ value: consts_1.CASPER_NETWORK,
67
+ });
68
+ // Check Fee field
69
+ expect(fields[2]).toEqual({
70
+ type: "casper.extendedAmount",
71
+ label: "Fee",
72
+ value: new bignumber_js_1.default(100000000),
73
+ });
74
+ // Check Amount field
75
+ expect(fields[3]).toEqual({
76
+ type: "casper.extendedAmount",
77
+ label: "Amount",
78
+ value: MOCK_AMOUNT,
79
+ });
80
+ // Verify logging
81
+ expect(logs_1.log).toHaveBeenCalledWith("debug", expect.stringContaining("Transaction config"));
82
+ });
83
+ test("should include transferId field when provided in transaction", () => {
84
+ // Create mock transaction with transferId
85
+ const mockTransaction = (0, fixtures_1.createMockTransaction)({
86
+ amount: MOCK_AMOUNT,
87
+ transferId: TRANSFER_ID,
88
+ });
89
+ // Get display fields
90
+ const fields = getConfigFields(mockTransaction);
91
+ // Verify the results
92
+ expect(fields).toHaveLength(5); // Chain ID, Type, Amount, Transfer ID fields
93
+ // Check all fields are present
94
+ const fieldLabels = fields.map(field => field.label);
95
+ expect(fieldLabels).toEqual(["Type", "Chain ID", "Fee", "Amount", "Transfer ID"]);
96
+ // Check Transfer ID field specifically
97
+ expect(fields[4]).toEqual({
98
+ type: "text",
99
+ label: "Transfer ID",
100
+ value: TRANSFER_ID,
101
+ });
102
+ });
103
+ test("should not include transferId field when undefined in transaction", () => {
104
+ // Create mock transaction with explicitly undefined transferId
105
+ const mockTransaction = (0, fixtures_1.createMockTransaction)({
106
+ amount: MOCK_AMOUNT,
107
+ transferId: undefined,
108
+ });
109
+ // Get display fields
110
+ const fields = getConfigFields(mockTransaction);
111
+ // Verify no transferId field is present
112
+ expect(fields).toHaveLength(4);
113
+ expect(fields.map(field => field.label)).not.toContain("Transfer ID");
114
+ });
115
+ test("should handle zero amount transactions correctly", () => {
116
+ // Create mock transaction with zero amount
117
+ const mockTransaction = (0, fixtures_1.createMockTransaction)({
118
+ amount: new bignumber_js_1.default(0),
119
+ });
120
+ // Get display fields
121
+ const fields = getConfigFields(mockTransaction);
122
+ // Verify amount field has zero value
123
+ const amountField = fields.find(field => field.label === "Amount");
124
+ expect(amountField).toBeDefined();
125
+ expect(amountField).toEqual({
126
+ type: "casper.extendedAmount",
127
+ label: "Amount",
128
+ value: new bignumber_js_1.default(0),
129
+ });
130
+ });
131
+ test("should maintain consistent order of fields regardless of transaction properties", () => {
132
+ // Create two transactions - one with transferId, one without
133
+ const txWithTransferId = (0, fixtures_1.createMockTransaction)({
134
+ amount: MOCK_AMOUNT,
135
+ transferId: TRANSFER_ID,
136
+ });
137
+ const txWithoutTransferId = (0, fixtures_1.createMockTransaction)({
138
+ amount: MOCK_AMOUNT,
139
+ });
140
+ const fieldsWithId = getConfigFields(txWithTransferId);
141
+ const fieldsWithoutId = getConfigFields(txWithoutTransferId);
142
+ // Verify field order consistency for common fields
143
+ for (let i = 0; i < fieldsWithoutId.length; i++) {
144
+ expect(fieldsWithId[i].label).toEqual(fieldsWithoutId[i].label);
145
+ }
146
+ });
147
+ });
148
+ //# sourceMappingURL=deviceTransactionConfig.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deviceTransactionConfig.test.js","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=estimateMaxSpendable.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateMaxSpendable.test.d.ts","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bignumber_js_1 = require("bignumber.js");
4
+ const estimateMaxSpendable_1 = require("./estimateMaxSpendable");
5
+ const fee_1 = require("./bridgeHelpers/fee");
6
+ const fixtures_1 = require("../test/fixtures");
7
+ // Mock the fee helper
8
+ jest.mock("./bridgeHelpers/fee", () => ({
9
+ getEstimatedFees: jest.fn().mockReturnValue(new bignumber_js_1.BigNumber(1000000)),
10
+ }));
11
+ describe("estimateMaxSpendable", () => {
12
+ const mockAccount = {
13
+ id: "casper:0:testAccount",
14
+ type: "Account",
15
+ spendableBalance: new bignumber_js_1.BigNumber(10000000),
16
+ };
17
+ afterEach(() => {
18
+ jest.clearAllMocks();
19
+ });
20
+ test("should return zero when balance is zero", async () => {
21
+ const zeroBalanceAccount = {
22
+ ...mockAccount,
23
+ spendableBalance: new bignumber_js_1.BigNumber(0),
24
+ };
25
+ const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
26
+ account: zeroBalanceAccount,
27
+ parentAccount: undefined,
28
+ });
29
+ expect(result.toNumber()).toBe(0);
30
+ expect(fee_1.getEstimatedFees).not.toHaveBeenCalled();
31
+ });
32
+ test("should return balance minus fees when no transaction is provided", async () => {
33
+ const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
34
+ account: mockAccount,
35
+ parentAccount: undefined,
36
+ });
37
+ const expectedFees = new bignumber_js_1.BigNumber(1000000);
38
+ const expectedMaxSpendable = mockAccount.spendableBalance.minus(expectedFees);
39
+ expect(result.toString()).toBe(expectedMaxSpendable.toString());
40
+ expect(fee_1.getEstimatedFees).toHaveBeenCalled();
41
+ });
42
+ test("should use transaction fees when transaction is provided", async () => {
43
+ const transactionFees = new bignumber_js_1.BigNumber(500000);
44
+ const mockTransaction = {
45
+ fees: transactionFees,
46
+ };
47
+ const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
48
+ account: mockAccount,
49
+ parentAccount: undefined,
50
+ transaction: mockTransaction,
51
+ });
52
+ const expectedMaxSpendable = mockAccount.spendableBalance.minus(transactionFees);
53
+ expect(result.toString()).toBe(expectedMaxSpendable.toString());
54
+ expect(fee_1.getEstimatedFees).not.toHaveBeenCalled();
55
+ });
56
+ test("should return zero when balance is less than fees", async () => {
57
+ const lowBalanceAccount = {
58
+ ...mockAccount,
59
+ spendableBalance: new bignumber_js_1.BigNumber(500000), // Less than default fee of 1000000
60
+ };
61
+ const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
62
+ account: lowBalanceAccount,
63
+ parentAccount: undefined,
64
+ });
65
+ expect(result.toString()).toBe("0");
66
+ });
67
+ test("should use main account when parentAccount is provided", async () => {
68
+ const parentAccount = {
69
+ id: "casper:parent",
70
+ spendableBalance: new bignumber_js_1.BigNumber(0),
71
+ };
72
+ const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
73
+ account: mockAccount,
74
+ parentAccount: parentAccount,
75
+ });
76
+ const expectedFees = new bignumber_js_1.BigNumber(1000000);
77
+ const expectedMaxSpendable = mockAccount.spendableBalance.minus(expectedFees);
78
+ expect(result.toString()).toBe(expectedMaxSpendable.toString());
79
+ });
80
+ });
81
+ // Add test cases from fixtures
82
+ describe("estimateMaxSpendable with standard test cases", () => {
83
+ const standardFees = new bignumber_js_1.BigNumber("1000000");
84
+ beforeEach(() => {
85
+ fee_1.getEstimatedFees.mockReturnValue(standardFees);
86
+ });
87
+ test.each([
88
+ {
89
+ name: "Standard account",
90
+ account: (0, fixtures_1.createMockAccount)(),
91
+ expectedResult: new bignumber_js_1.BigNumber("10000000000").minus(standardFees),
92
+ },
93
+ {
94
+ name: "Empty account",
95
+ account: (0, fixtures_1.createMockAccount)({
96
+ balance: new bignumber_js_1.BigNumber("0"),
97
+ spendableBalance: new bignumber_js_1.BigNumber("0"),
98
+ }),
99
+ expectedResult: new bignumber_js_1.BigNumber("0"),
100
+ },
101
+ {
102
+ name: "Account with balance less than fees",
103
+ account: (0, fixtures_1.createMockAccount)({
104
+ balance: standardFees.div(2),
105
+ spendableBalance: standardFees.div(2),
106
+ }),
107
+ expectedResult: new bignumber_js_1.BigNumber("0"),
108
+ },
109
+ {
110
+ name: "Account with balance equal to fees",
111
+ account: (0, fixtures_1.createMockAccount)({
112
+ balance: standardFees,
113
+ spendableBalance: standardFees,
114
+ }),
115
+ expectedResult: new bignumber_js_1.BigNumber("0"),
116
+ },
117
+ {
118
+ name: "Account with high balance",
119
+ account: (0, fixtures_1.createMockAccount)({
120
+ balance: new bignumber_js_1.BigNumber("100000000000000"),
121
+ spendableBalance: new bignumber_js_1.BigNumber("100000000000000"),
122
+ }),
123
+ expectedResult: new bignumber_js_1.BigNumber("100000000000000").minus(standardFees),
124
+ },
125
+ ])("should handle $name", async ({ account, expectedResult }) => {
126
+ const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
127
+ account: account,
128
+ parentAccount: undefined,
129
+ });
130
+ expect(result.toString()).toBe(expectedResult.toString());
131
+ });
132
+ });
133
+ //# sourceMappingURL=estimateMaxSpendable.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"estimateMaxSpendable.test.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=getTransactionStatus.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionStatus.test.d.ts","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.test.ts"],"names":[],"mappings":""}