@ledgerhq/coin-canton 0.8.0-nightly.5 → 0.8.0-nightly.7

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 (195) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +20 -0
  3. package/package.json +6 -6
  4. package/lib/api/getBalance.integ.test.d.ts +0 -2
  5. package/lib/api/getBalance.integ.test.d.ts.map +0 -1
  6. package/lib/api/getBalance.integ.test.js +0 -28
  7. package/lib/api/getBalance.integ.test.js.map +0 -1
  8. package/lib/api/index.test.d.ts +0 -2
  9. package/lib/api/index.test.d.ts.map +0 -1
  10. package/lib/api/index.test.js +0 -16
  11. package/lib/api/index.test.js.map +0 -1
  12. package/lib/api/lastBlock.integ.test.d.ts +0 -2
  13. package/lib/api/lastBlock.integ.test.d.ts.map +0 -1
  14. package/lib/api/lastBlock.integ.test.js +0 -22
  15. package/lib/api/lastBlock.integ.test.js.map +0 -1
  16. package/lib/api/listOperations.integ.test.d.ts +0 -2
  17. package/lib/api/listOperations.integ.test.d.ts.map +0 -1
  18. package/lib/api/listOperations.integ.test.js +0 -24
  19. package/lib/api/listOperations.integ.test.js.map +0 -1
  20. package/lib/bridge/broadcast.test.d.ts +0 -2
  21. package/lib/bridge/broadcast.test.d.ts.map +0 -1
  22. package/lib/bridge/broadcast.test.js +0 -44
  23. package/lib/bridge/broadcast.test.js.map +0 -1
  24. package/lib/bridge/createTransaction.test.d.ts +0 -2
  25. package/lib/bridge/createTransaction.test.d.ts.map +0 -1
  26. package/lib/bridge/createTransaction.test.js +0 -12
  27. package/lib/bridge/createTransaction.test.js.map +0 -1
  28. package/lib/bridge/deviceTransactionConfig.test.d.ts +0 -2
  29. package/lib/bridge/deviceTransactionConfig.test.d.ts.map +0 -1
  30. package/lib/bridge/deviceTransactionConfig.test.js +0 -22
  31. package/lib/bridge/deviceTransactionConfig.test.js.map +0 -1
  32. package/lib/bridge/getTransactionStatus.test.d.ts +0 -2
  33. package/lib/bridge/getTransactionStatus.test.d.ts.map +0 -1
  34. package/lib/bridge/getTransactionStatus.test.js +0 -365
  35. package/lib/bridge/getTransactionStatus.test.js.map +0 -1
  36. package/lib/bridge/index.test.d.ts +0 -2
  37. package/lib/bridge/index.test.d.ts.map +0 -1
  38. package/lib/bridge/index.test.js +0 -31
  39. package/lib/bridge/index.test.js.map +0 -1
  40. package/lib/bridge/onboard.integ.test.d.ts +0 -2
  41. package/lib/bridge/onboard.integ.test.d.ts.map +0 -1
  42. package/lib/bridge/onboard.integ.test.js +0 -182
  43. package/lib/bridge/onboard.integ.test.js.map +0 -1
  44. package/lib/bridge/onboard.test.d.ts +0 -2
  45. package/lib/bridge/onboard.test.d.ts.map +0 -1
  46. package/lib/bridge/onboard.test.js +0 -84
  47. package/lib/bridge/onboard.test.js.map +0 -1
  48. package/lib/bridge/prepareTransaction.test.d.ts +0 -2
  49. package/lib/bridge/prepareTransaction.test.d.ts.map +0 -1
  50. package/lib/bridge/prepareTransaction.test.js +0 -42
  51. package/lib/bridge/prepareTransaction.test.js.map +0 -1
  52. package/lib/bridge/sync.integ.test.d.ts +0 -2
  53. package/lib/bridge/sync.integ.test.d.ts.map +0 -1
  54. package/lib/bridge/sync.integ.test.js +0 -198
  55. package/lib/bridge/sync.integ.test.js.map +0 -1
  56. package/lib/bridge/sync.test.d.ts +0 -2
  57. package/lib/bridge/sync.test.d.ts.map +0 -1
  58. package/lib/bridge/sync.test.js +0 -201
  59. package/lib/bridge/sync.test.js.map +0 -1
  60. package/lib/common-logic/account/getBalance.unit.test.d.ts +0 -2
  61. package/lib/common-logic/account/getBalance.unit.test.d.ts.map +0 -1
  62. package/lib/common-logic/account/getBalance.unit.test.js +0 -91
  63. package/lib/common-logic/account/getBalance.unit.test.js.map +0 -1
  64. package/lib/common-logic/history/lastBlock.test.d.ts +0 -2
  65. package/lib/common-logic/history/lastBlock.test.d.ts.map +0 -1
  66. package/lib/common-logic/history/lastBlock.test.js +0 -46
  67. package/lib/common-logic/history/lastBlock.test.js.map +0 -1
  68. package/lib/common-logic/transaction/broadcast.test.d.ts +0 -2
  69. package/lib/common-logic/transaction/broadcast.test.d.ts.map +0 -1
  70. package/lib/common-logic/transaction/broadcast.test.js +0 -71
  71. package/lib/common-logic/transaction/broadcast.test.js.map +0 -1
  72. package/lib/common-logic/transaction/combine.test.d.ts +0 -2
  73. package/lib/common-logic/transaction/combine.test.d.ts.map +0 -1
  74. package/lib/common-logic/transaction/combine.test.js +0 -18
  75. package/lib/common-logic/transaction/combine.test.js.map +0 -1
  76. package/lib/common-logic/transaction/estimateFees.test.d.ts +0 -2
  77. package/lib/common-logic/transaction/estimateFees.test.d.ts.map +0 -1
  78. package/lib/common-logic/transaction/estimateFees.test.js +0 -72
  79. package/lib/common-logic/transaction/estimateFees.test.js.map +0 -1
  80. package/lib/common-logic/utils.test.d.ts +0 -2
  81. package/lib/common-logic/utils.test.d.ts.map +0 -1
  82. package/lib/common-logic/utils.test.js +0 -104
  83. package/lib/common-logic/utils.test.js.map +0 -1
  84. package/lib/network/gateway.integ.test.d.ts +0 -2
  85. package/lib/network/gateway.integ.test.d.ts.map +0 -1
  86. package/lib/network/gateway.integ.test.js +0 -190
  87. package/lib/network/gateway.integ.test.js.map +0 -1
  88. package/lib/network/gateway.test.d.ts +0 -2
  89. package/lib/network/gateway.test.d.ts.map +0 -1
  90. package/lib/network/gateway.test.js +0 -59
  91. package/lib/network/gateway.test.js.map +0 -1
  92. package/lib/network/node.integ.test.d.ts +0 -2
  93. package/lib/network/node.integ.test.d.ts.map +0 -1
  94. package/lib/network/node.integ.test.js +0 -44
  95. package/lib/network/node.integ.test.js.map +0 -1
  96. package/lib/network/node.unit.test.d.ts +0 -2
  97. package/lib/network/node.unit.test.d.ts.map +0 -1
  98. package/lib/network/node.unit.test.js +0 -32
  99. package/lib/network/node.unit.test.js.map +0 -1
  100. package/lib-es/api/getBalance.integ.test.d.ts +0 -2
  101. package/lib-es/api/getBalance.integ.test.d.ts.map +0 -1
  102. package/lib-es/api/getBalance.integ.test.js +0 -26
  103. package/lib-es/api/getBalance.integ.test.js.map +0 -1
  104. package/lib-es/api/index.test.d.ts +0 -2
  105. package/lib-es/api/index.test.d.ts.map +0 -1
  106. package/lib-es/api/index.test.js +0 -14
  107. package/lib-es/api/index.test.js.map +0 -1
  108. package/lib-es/api/lastBlock.integ.test.d.ts +0 -2
  109. package/lib-es/api/lastBlock.integ.test.d.ts.map +0 -1
  110. package/lib-es/api/lastBlock.integ.test.js +0 -20
  111. package/lib-es/api/lastBlock.integ.test.js.map +0 -1
  112. package/lib-es/api/listOperations.integ.test.d.ts +0 -2
  113. package/lib-es/api/listOperations.integ.test.d.ts.map +0 -1
  114. package/lib-es/api/listOperations.integ.test.js +0 -22
  115. package/lib-es/api/listOperations.integ.test.js.map +0 -1
  116. package/lib-es/bridge/broadcast.test.d.ts +0 -2
  117. package/lib-es/bridge/broadcast.test.d.ts.map +0 -1
  118. package/lib-es/bridge/broadcast.test.js +0 -42
  119. package/lib-es/bridge/broadcast.test.js.map +0 -1
  120. package/lib-es/bridge/createTransaction.test.d.ts +0 -2
  121. package/lib-es/bridge/createTransaction.test.d.ts.map +0 -1
  122. package/lib-es/bridge/createTransaction.test.js +0 -10
  123. package/lib-es/bridge/createTransaction.test.js.map +0 -1
  124. package/lib-es/bridge/deviceTransactionConfig.test.d.ts +0 -2
  125. package/lib-es/bridge/deviceTransactionConfig.test.d.ts.map +0 -1
  126. package/lib-es/bridge/deviceTransactionConfig.test.js +0 -17
  127. package/lib-es/bridge/deviceTransactionConfig.test.js.map +0 -1
  128. package/lib-es/bridge/getTransactionStatus.test.d.ts +0 -2
  129. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +0 -1
  130. package/lib-es/bridge/getTransactionStatus.test.js +0 -360
  131. package/lib-es/bridge/getTransactionStatus.test.js.map +0 -1
  132. package/lib-es/bridge/index.test.d.ts +0 -2
  133. package/lib-es/bridge/index.test.d.ts.map +0 -1
  134. package/lib-es/bridge/index.test.js +0 -29
  135. package/lib-es/bridge/index.test.js.map +0 -1
  136. package/lib-es/bridge/onboard.integ.test.d.ts +0 -2
  137. package/lib-es/bridge/onboard.integ.test.d.ts.map +0 -1
  138. package/lib-es/bridge/onboard.integ.test.js +0 -177
  139. package/lib-es/bridge/onboard.integ.test.js.map +0 -1
  140. package/lib-es/bridge/onboard.test.d.ts +0 -2
  141. package/lib-es/bridge/onboard.test.d.ts.map +0 -1
  142. package/lib-es/bridge/onboard.test.js +0 -49
  143. package/lib-es/bridge/onboard.test.js.map +0 -1
  144. package/lib-es/bridge/prepareTransaction.test.d.ts +0 -2
  145. package/lib-es/bridge/prepareTransaction.test.d.ts.map +0 -1
  146. package/lib-es/bridge/prepareTransaction.test.js +0 -37
  147. package/lib-es/bridge/prepareTransaction.test.js.map +0 -1
  148. package/lib-es/bridge/sync.integ.test.d.ts +0 -2
  149. package/lib-es/bridge/sync.integ.test.d.ts.map +0 -1
  150. package/lib-es/bridge/sync.integ.test.js +0 -160
  151. package/lib-es/bridge/sync.integ.test.js.map +0 -1
  152. package/lib-es/bridge/sync.test.d.ts +0 -2
  153. package/lib-es/bridge/sync.test.d.ts.map +0 -1
  154. package/lib-es/bridge/sync.test.js +0 -163
  155. package/lib-es/bridge/sync.test.js.map +0 -1
  156. package/lib-es/common-logic/account/getBalance.unit.test.d.ts +0 -2
  157. package/lib-es/common-logic/account/getBalance.unit.test.d.ts.map +0 -1
  158. package/lib-es/common-logic/account/getBalance.unit.test.js +0 -56
  159. package/lib-es/common-logic/account/getBalance.unit.test.js.map +0 -1
  160. package/lib-es/common-logic/history/lastBlock.test.d.ts +0 -2
  161. package/lib-es/common-logic/history/lastBlock.test.d.ts.map +0 -1
  162. package/lib-es/common-logic/history/lastBlock.test.js +0 -41
  163. package/lib-es/common-logic/history/lastBlock.test.js.map +0 -1
  164. package/lib-es/common-logic/transaction/broadcast.test.d.ts +0 -2
  165. package/lib-es/common-logic/transaction/broadcast.test.d.ts.map +0 -1
  166. package/lib-es/common-logic/transaction/broadcast.test.js +0 -36
  167. package/lib-es/common-logic/transaction/broadcast.test.js.map +0 -1
  168. package/lib-es/common-logic/transaction/combine.test.d.ts +0 -2
  169. package/lib-es/common-logic/transaction/combine.test.d.ts.map +0 -1
  170. package/lib-es/common-logic/transaction/combine.test.js +0 -16
  171. package/lib-es/common-logic/transaction/combine.test.js.map +0 -1
  172. package/lib-es/common-logic/transaction/estimateFees.test.d.ts +0 -2
  173. package/lib-es/common-logic/transaction/estimateFees.test.d.ts.map +0 -1
  174. package/lib-es/common-logic/transaction/estimateFees.test.js +0 -37
  175. package/lib-es/common-logic/transaction/estimateFees.test.js.map +0 -1
  176. package/lib-es/common-logic/utils.test.d.ts +0 -2
  177. package/lib-es/common-logic/utils.test.d.ts.map +0 -1
  178. package/lib-es/common-logic/utils.test.js +0 -99
  179. package/lib-es/common-logic/utils.test.js.map +0 -1
  180. package/lib-es/network/gateway.integ.test.d.ts +0 -2
  181. package/lib-es/network/gateway.integ.test.d.ts.map +0 -1
  182. package/lib-es/network/gateway.integ.test.js +0 -185
  183. package/lib-es/network/gateway.integ.test.js.map +0 -1
  184. package/lib-es/network/gateway.test.d.ts +0 -2
  185. package/lib-es/network/gateway.test.d.ts.map +0 -1
  186. package/lib-es/network/gateway.test.js +0 -54
  187. package/lib-es/network/gateway.test.js.map +0 -1
  188. package/lib-es/network/node.integ.test.d.ts +0 -2
  189. package/lib-es/network/node.integ.test.d.ts.map +0 -1
  190. package/lib-es/network/node.integ.test.js +0 -39
  191. package/lib-es/network/node.integ.test.js.map +0 -1
  192. package/lib-es/network/node.unit.test.d.ts +0 -2
  193. package/lib-es/network/node.unit.test.d.ts.map +0 -1
  194. package/lib-es/network/node.unit.test.js +0 -27
  195. package/lib-es/network/node.unit.test.js.map +0 -1
@@ -1,365 +0,0 @@
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 errors_1 = require("@ledgerhq/errors");
8
- const getTransactionStatus_1 = require("./getTransactionStatus");
9
- const config_1 = __importDefault(require("../config"));
10
- // Mock the coin config
11
- jest.mock("../config", () => ({
12
- getCoinConfig: jest.fn(),
13
- }));
14
- const mockCoinConfig = jest.mocked(config_1.default);
15
- describe("getTransactionStatus", () => {
16
- const mockCurrency = {
17
- id: "canton_network",
18
- name: "Canton Network",
19
- family: "canton",
20
- units: [
21
- {
22
- name: "Canton",
23
- code: "CANTON",
24
- magnitude: 8,
25
- },
26
- ],
27
- ticker: "CANTON",
28
- scheme: "canton",
29
- color: "#000000",
30
- type: "CryptoCurrency",
31
- managerAppName: "Canton",
32
- coinType: 0,
33
- disableCountervalue: false,
34
- delisted: false,
35
- keywords: ["canton"],
36
- explorerViews: [],
37
- terminated: {
38
- link: "",
39
- },
40
- };
41
- const mockAccount = {
42
- id: "test-account-id",
43
- seedIdentifier: "test-seed-identifier",
44
- currency: mockCurrency,
45
- balance: new bignumber_js_1.default(1000), // 1000 units
46
- spendableBalance: new bignumber_js_1.default(1000),
47
- freshAddress: "test::123",
48
- freshAddressPath: "44'/60'/0'/0/0",
49
- index: 0,
50
- derivationMode: "canton",
51
- used: true,
52
- operations: [],
53
- pendingOperations: [],
54
- lastSyncDate: new Date(),
55
- creationDate: new Date(),
56
- operationsCount: 0,
57
- blockHeight: 100,
58
- balanceHistoryCache: {
59
- HOUR: { latestDate: null, balances: [] },
60
- DAY: { latestDate: null, balances: [] },
61
- WEEK: { latestDate: null, balances: [] },
62
- },
63
- swapHistory: [],
64
- nfts: [],
65
- subAccounts: [],
66
- type: "Account",
67
- };
68
- beforeEach(() => {
69
- jest.clearAllMocks();
70
- mockCoinConfig.getCoinConfig.mockReturnValue({
71
- minReserve: 100, // 100 units minimum reserve
72
- networkType: "mainnet",
73
- status: { type: "active" },
74
- nativeInstrumentId: "Amulet",
75
- });
76
- });
77
- describe("fee validation", () => {
78
- it("should return FeeNotLoaded error when fee is not provided", async () => {
79
- const transaction = {
80
- family: "canton",
81
- amount: new bignumber_js_1.default(100),
82
- recipient: "valid::123",
83
- fee: null,
84
- tokenId: "",
85
- };
86
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
87
- expect(result.errors.fee).toBeInstanceOf(errors_1.FeeNotLoaded);
88
- expect(result.warnings).toEqual({});
89
- });
90
- it("should return FeeRequired error when fee is zero", async () => {
91
- const transaction = {
92
- family: "canton",
93
- amount: new bignumber_js_1.default(100),
94
- recipient: "valid::123",
95
- fee: new bignumber_js_1.default(0),
96
- tokenId: "",
97
- };
98
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
99
- expect(result.errors.fee).toBeInstanceOf(errors_1.FeeRequired);
100
- expect(result.warnings).toEqual({});
101
- });
102
- it("should add FeeTooHigh warning when fee is more than 10 times the amount", async () => {
103
- const transaction = {
104
- family: "canton",
105
- amount: new bignumber_js_1.default(100), // Use larger amount to avoid balance issues
106
- recipient: "valid::123",
107
- fee: new bignumber_js_1.default(1500), // 15x the amount
108
- tokenId: "",
109
- };
110
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
111
- expect(result.warnings.feeTooHigh).toBeInstanceOf(errors_1.FeeTooHigh);
112
- // Don't check for empty errors since there might be balance issues
113
- });
114
- it("should not add FeeTooHigh warning when fee is reasonable", async () => {
115
- const transaction = {
116
- family: "canton",
117
- amount: new bignumber_js_1.default(100),
118
- recipient: "valid::123",
119
- fee: new bignumber_js_1.default(10), // 0.1x the amount
120
- tokenId: "",
121
- };
122
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
123
- expect(result.warnings).toEqual({});
124
- expect(result.errors).toEqual({});
125
- });
126
- });
127
- describe("balance validation", () => {
128
- it("should return NotEnoughSpendableBalance error when total spent exceeds balance minus reserve", async () => {
129
- const transaction = {
130
- family: "canton",
131
- amount: new bignumber_js_1.default(950), // 950 + 10 fee = 960, but balance is 1000 and reserve is 100
132
- recipient: "valid::123",
133
- fee: new bignumber_js_1.default(10),
134
- tokenId: "",
135
- };
136
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
137
- expect(result.errors.amount).toBeInstanceOf(errors_1.NotEnoughSpendableBalance);
138
- });
139
- it("should return NotEnoughBalanceBecauseDestinationNotCreated error when amount is below reserve", async () => {
140
- const transaction = {
141
- family: "canton",
142
- amount: new bignumber_js_1.default(50), // Below reserve amount of 100
143
- recipient: "valid::123",
144
- fee: new bignumber_js_1.default(10),
145
- tokenId: "",
146
- };
147
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
148
- expect(result.errors.amount).toBeInstanceOf(errors_1.NotEnoughBalanceBecauseDestinationNotCreated);
149
- });
150
- it("should pass balance validation when transaction is within limits", async () => {
151
- const transaction = {
152
- family: "canton",
153
- amount: new bignumber_js_1.default(800), // 800 + 10 fee = 810, balance is 1000, reserve is 100, so 900 available
154
- recipient: "valid::123",
155
- fee: new bignumber_js_1.default(10),
156
- tokenId: "",
157
- };
158
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
159
- expect(result.errors.amount).toBeUndefined();
160
- });
161
- });
162
- describe("recipient validation", () => {
163
- it("should return RecipientRequired error when recipient is missing", async () => {
164
- const transaction = {
165
- family: "canton",
166
- amount: new bignumber_js_1.default(100),
167
- recipient: "",
168
- fee: new bignumber_js_1.default(10),
169
- tokenId: "",
170
- };
171
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
172
- expect(result.errors.recipient).toBeInstanceOf(errors_1.RecipientRequired);
173
- });
174
- it("should return InvalidAddressBecauseDestinationIsAlsoSource error when sending to self", async () => {
175
- const transaction = {
176
- family: "canton",
177
- amount: new bignumber_js_1.default(100),
178
- recipient: "test::123", // Same as account.freshAddress
179
- fee: new bignumber_js_1.default(10),
180
- tokenId: "",
181
- };
182
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
183
- expect(result.errors.recipient).toBeInstanceOf(errors_1.InvalidAddressBecauseDestinationIsAlsoSource);
184
- });
185
- it("should return InvalidAddress error when recipient is invalid", async () => {
186
- const transaction = {
187
- family: "canton",
188
- amount: new bignumber_js_1.default(100),
189
- recipient: "invalid-address",
190
- fee: new bignumber_js_1.default(10),
191
- tokenId: "",
192
- };
193
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
194
- expect(result.errors.recipient).toBeInstanceOf(errors_1.InvalidAddress);
195
- });
196
- it("should pass recipient validation when recipient is valid", async () => {
197
- const transaction = {
198
- family: "canton",
199
- amount: new bignumber_js_1.default(100),
200
- recipient: "valid::456",
201
- fee: new bignumber_js_1.default(10),
202
- tokenId: "",
203
- };
204
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
205
- expect(result.errors.recipient).toBeUndefined();
206
- });
207
- });
208
- describe("amount validation", () => {
209
- it("should return AmountRequired error when amount is zero", async () => {
210
- // Create a scenario where there are no other amount errors
211
- // Use a high balance and amount above reserve to avoid other amount errors
212
- const accountWithHighBalance = {
213
- ...mockAccount,
214
- balance: new bignumber_js_1.default(10000), // High balance to avoid balance errors
215
- };
216
- // Set a high reserve to avoid the NotEnoughBalanceBecauseDestinationNotCreated error
217
- mockCoinConfig.getCoinConfig.mockReturnValue({
218
- minReserve: 0, // Set reserve to 0 to avoid reserve-related errors
219
- networkType: "mainnet",
220
- status: { type: "active" },
221
- nativeInstrumentId: "Amulet",
222
- });
223
- const transaction = {
224
- family: "canton",
225
- amount: new bignumber_js_1.default(0),
226
- recipient: "valid::123",
227
- fee: new bignumber_js_1.default(10),
228
- tokenId: "",
229
- };
230
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(accountWithHighBalance, transaction);
231
- expect(result.errors.amount).toBeInstanceOf(errors_1.AmountRequired);
232
- });
233
- it("should not return AmountRequired error when amount is positive", async () => {
234
- const transaction = {
235
- family: "canton",
236
- amount: new bignumber_js_1.default(100),
237
- recipient: "valid::123",
238
- fee: new bignumber_js_1.default(10),
239
- tokenId: "",
240
- };
241
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
242
- expect(result.errors.amount).toBeUndefined();
243
- });
244
- });
245
- describe("return values", () => {
246
- it("should return correct estimatedFees, amount, and totalSpent", async () => {
247
- const transaction = {
248
- family: "canton",
249
- amount: new bignumber_js_1.default(100),
250
- recipient: "valid::123",
251
- fee: new bignumber_js_1.default(10),
252
- tokenId: "",
253
- };
254
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
255
- expect(result.estimatedFees).toEqual(new bignumber_js_1.default(10));
256
- expect(result.amount).toEqual(new bignumber_js_1.default(100));
257
- expect(result.totalSpent).toEqual(new bignumber_js_1.default(110));
258
- });
259
- it("should return empty errors and warnings when transaction is valid", async () => {
260
- const transaction = {
261
- family: "canton",
262
- amount: new bignumber_js_1.default(100),
263
- recipient: "valid::123",
264
- fee: new bignumber_js_1.default(10),
265
- tokenId: "",
266
- };
267
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
268
- expect(result.errors).toEqual({});
269
- expect(result.warnings).toEqual({});
270
- });
271
- });
272
- describe("edge cases", () => {
273
- it("should handle account with zero balance", async () => {
274
- const accountWithZeroBalance = {
275
- ...mockAccount,
276
- balance: new bignumber_js_1.default(0),
277
- };
278
- const transaction = {
279
- family: "canton",
280
- amount: new bignumber_js_1.default(50),
281
- recipient: "valid::123",
282
- fee: new bignumber_js_1.default(10),
283
- tokenId: "",
284
- };
285
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(accountWithZeroBalance, transaction);
286
- expect(result.errors.amount).toBeInstanceOf(errors_1.NotEnoughSpendableBalance);
287
- });
288
- it("should handle account with balance exactly equal to reserve", async () => {
289
- const accountWithReserveBalance = {
290
- ...mockAccount,
291
- balance: new bignumber_js_1.default(100), // Exactly equal to reserve
292
- };
293
- const transaction = {
294
- family: "canton",
295
- amount: new bignumber_js_1.default(50),
296
- recipient: "valid::123",
297
- fee: new bignumber_js_1.default(10),
298
- tokenId: "",
299
- };
300
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(accountWithReserveBalance, transaction);
301
- expect(result.errors.amount).toBeInstanceOf(errors_1.NotEnoughSpendableBalance);
302
- });
303
- it("should handle zero reserve amount", async () => {
304
- mockCoinConfig.getCoinConfig.mockReturnValue({
305
- minReserve: 0,
306
- networkType: "mainnet",
307
- status: { type: "active" },
308
- nativeInstrumentId: "Amulet",
309
- });
310
- const transaction = {
311
- family: "canton",
312
- amount: new bignumber_js_1.default(50),
313
- recipient: "valid::123",
314
- fee: new bignumber_js_1.default(10),
315
- tokenId: "",
316
- };
317
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
318
- expect(result.errors.amount).toBeUndefined();
319
- });
320
- it("should handle undefined reserve amount", async () => {
321
- mockCoinConfig.getCoinConfig.mockReturnValue({
322
- networkType: "mainnet",
323
- status: { type: "active" },
324
- nativeInstrumentId: "Amulet",
325
- });
326
- const transaction = {
327
- family: "canton",
328
- amount: new bignumber_js_1.default(50),
329
- recipient: "valid::123",
330
- fee: new bignumber_js_1.default(10),
331
- tokenId: "",
332
- };
333
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
334
- expect(result.errors.amount).toBeUndefined();
335
- });
336
- });
337
- describe("multiple validation errors", () => {
338
- it("should return multiple errors when multiple validations fail", async () => {
339
- const transaction = {
340
- family: "canton",
341
- amount: new bignumber_js_1.default(0), // AmountRequired
342
- recipient: "", // RecipientRequired
343
- fee: null, // FeeNotLoaded
344
- tokenId: "",
345
- };
346
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
347
- expect(result.errors.amount).toBeInstanceOf(errors_1.AmountRequired);
348
- expect(result.errors.recipient).toBeInstanceOf(errors_1.RecipientRequired);
349
- expect(result.errors.fee).toBeInstanceOf(errors_1.FeeNotLoaded);
350
- });
351
- it("should return both errors and warnings", async () => {
352
- const transaction = {
353
- family: "canton",
354
- amount: new bignumber_js_1.default(5), // Small amount
355
- recipient: "valid::123",
356
- fee: new bignumber_js_1.default(100), // High fee relative to amount
357
- tokenId: "",
358
- };
359
- const result = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, transaction);
360
- expect(result.warnings.feeTooHigh).toBeInstanceOf(errors_1.FeeTooHigh);
361
- expect(result.errors.amount).toBeInstanceOf(errors_1.NotEnoughBalanceBecauseDestinationNotCreated);
362
- });
363
- });
364
- });
365
- //# sourceMappingURL=getTransactionStatus.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getTransactionStatus.test.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/bridge/index.test.ts"],"names":[],"mappings":""}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const _1 = require(".");
4
- describe("createBridges", () => {
5
- it("should return both bridges interface", () => {
6
- const bridges = (0, _1.createBridges)(undefined, {});
7
- expect(bridges.accountBridge).toBeDefined();
8
- expect(bridges.currencyBridge).toBeDefined();
9
- });
10
- it("should have a currency bridge with required methods", () => {
11
- const bridges = (0, _1.createBridges)(undefined, {});
12
- expect(bridges.currencyBridge).toBeDefined();
13
- expect(bridges.currencyBridge.preload).toBeDefined();
14
- expect(bridges.currencyBridge.hydrate).toBeDefined();
15
- expect(bridges.currencyBridge.scanAccounts).toBeDefined();
16
- });
17
- it("should have an account bridge with required methods", () => {
18
- const bridges = (0, _1.createBridges)(undefined, {});
19
- expect(bridges.accountBridge).toBeDefined();
20
- expect(bridges.accountBridge.broadcast).toBeDefined();
21
- expect(bridges.accountBridge.createTransaction).toBeDefined();
22
- expect(bridges.accountBridge.estimateMaxSpendable).toBeDefined();
23
- expect(bridges.accountBridge.getTransactionStatus).toBeDefined();
24
- expect(bridges.accountBridge.prepareTransaction).toBeDefined();
25
- expect(bridges.accountBridge.receive).toBeDefined();
26
- expect(bridges.accountBridge.signOperation).toBeDefined();
27
- expect(bridges.accountBridge.sync).toBeDefined();
28
- expect(bridges.accountBridge.updateTransaction).toBeDefined();
29
- });
30
- });
31
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/bridge/index.test.ts"],"names":[],"mappings":";;AAAA,wBAAkC;AAElC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,OAAO,GAAG,IAAA,gBAAa,EAAC,SAAgB,EAAE,EAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,OAAO,GAAG,IAAA,gBAAa,EAAC,SAAgB,EAAE,EAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,OAAO,GAAG,IAAA,gBAAa,EAAC,SAAgB,EAAE,EAAS,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9D,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;QACjE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,WAAW,EAAE,CAAC;QACjE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=onboard.integ.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onboard.integ.test.d.ts","sourceRoot":"","sources":["../../src/bridge/onboard.integ.test.ts"],"names":[],"mappings":""}
@@ -1,182 +0,0 @@
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 rxjs_1 = require("rxjs");
8
- const index_1 = require("@ledgerhq/coin-framework/account/index");
9
- const cantonTestUtils_1 = require("../test/cantonTestUtils");
10
- const onboard_1 = require("../types/onboard");
11
- const config_1 = __importDefault(require("../config"));
12
- const onboard_2 = require("./onboard");
13
- describe("onboard (devnet)", () => {
14
- const mockDeviceId = "test-device-id";
15
- const mockCurrency = {
16
- id: "canton_network",
17
- };
18
- const mockAccount = {
19
- type: "Account",
20
- id: "js:2:canton_network:canton_3f5c9d9a:canton",
21
- seedIdentifier: "canton_3f5c9d9a",
22
- derivationMode: "canton",
23
- index: 0,
24
- freshAddress: "canton_3f5c9d9a",
25
- freshAddressPath: "44'/6767'/0'/0'/0'",
26
- used: false,
27
- balance: (0, bignumber_js_1.default)(10000),
28
- spendableBalance: (0, bignumber_js_1.default)(10000),
29
- creationDate: new Date(),
30
- blockHeight: 1,
31
- currency: mockCurrency,
32
- operationsCount: 0,
33
- operations: [],
34
- pendingOperations: [],
35
- lastSyncDate: new Date(),
36
- balanceHistoryCache: index_1.emptyHistoryCache,
37
- swapHistory: [],
38
- };
39
- let onboardedAccount = null;
40
- beforeAll(() => {
41
- config_1.default.setCoinConfig(() => ({
42
- gatewayUrl: "https://canton-gateway.api.live.ledger-test.com",
43
- useGateway: true,
44
- networkType: "devnet",
45
- nativeInstrumentId: "Amulet",
46
- status: {
47
- type: "active",
48
- },
49
- }));
50
- });
51
- const getOnboardedAccount = () => {
52
- if (!onboardedAccount) {
53
- throw new Error("onboardedAccount is null. Ensure isAccountOnboarded test runs first to set it.");
54
- }
55
- return onboardedAccount;
56
- };
57
- describe("isAccountOnboarded", () => {
58
- it("should return true for onboarded account", async () => {
59
- // GIVEN
60
- const keyPair = (0, cantonTestUtils_1.generateMockKeyPair)();
61
- const mockSigner = (0, cantonTestUtils_1.createMockSigner)(keyPair);
62
- const mockSignerContext = jest.fn().mockImplementation((deviceId, callback) => {
63
- return callback(mockSigner);
64
- });
65
- const onboardObservable = (0, onboard_2.buildOnboardAccount)(mockSignerContext);
66
- const onboardValues = await (0, rxjs_1.firstValueFrom)(onboardObservable(mockCurrency, mockDeviceId, mockAccount).pipe((0, rxjs_1.toArray)()));
67
- const onboardResult = onboardValues.find((value) => "partyId" in value);
68
- if (!onboardResult) {
69
- throw new Error("Failed to onboard account for shared test data");
70
- }
71
- // Save onboarded account for all tests that need a valid party ID
72
- onboardedAccount = {
73
- keyPair,
74
- mockSigner,
75
- mockSignerContext,
76
- onboardResult,
77
- };
78
- // WHEN
79
- const result = await (0, onboard_2.isAccountOnboarded)(mockCurrency, keyPair.publicKeyHex);
80
- // THEN
81
- expect(result).not.toBe(false);
82
- if (typeof result === "object") {
83
- expect(result.partyId).toBeDefined();
84
- expect(result.partyId).toBe(onboardResult.partyId);
85
- }
86
- }, 40000);
87
- it("should return false for non-onboarded account with fresh keypair", async () => {
88
- // GIVEN
89
- const keyPair = (0, cantonTestUtils_1.generateMockKeyPair)();
90
- // WHEN
91
- const result = await (0, onboard_2.isAccountOnboarded)(mockCurrency, keyPair.publicKeyHex);
92
- // THEN
93
- expect(result).toEqual({ isOnboarded: false });
94
- }, 15000);
95
- it("should handle errors gracefully when checking non-existent party", async () => {
96
- // GIVEN
97
- const keyPair = (0, cantonTestUtils_1.generateMockKeyPair)();
98
- // WHEN
99
- const result = await (0, onboard_2.isAccountOnboarded)(mockCurrency, keyPair.publicKeyHex);
100
- // THEN
101
- expect(result).toEqual({ isOnboarded: false });
102
- }, 15000);
103
- });
104
- describe("buildOnboardAccount", () => {
105
- it("should complete full onboarding flow with fresh keypair", async () => {
106
- // GIVEN
107
- const keyPair = (0, cantonTestUtils_1.generateMockKeyPair)();
108
- const mockSigner = (0, cantonTestUtils_1.createMockSigner)(keyPair);
109
- const mockSignerContext = jest.fn().mockImplementation((deviceId, callback) => {
110
- return callback(mockSigner);
111
- });
112
- const onboardObservable = (0, onboard_2.buildOnboardAccount)(mockSignerContext);
113
- // WHEN
114
- const allValues = await (0, rxjs_1.firstValueFrom)(onboardObservable(mockCurrency, mockDeviceId, mockAccount).pipe((0, rxjs_1.toArray)()));
115
- const progressValues = allValues.filter((value) => "status" in value && !("partyId" in value));
116
- const resultValues = allValues.filter((value) => "partyId" in value);
117
- // THEN
118
- // Check expected status progression
119
- expect(progressValues.some(p => p.status === onboard_1.OnboardStatus.INIT)).toBe(true);
120
- expect(progressValues.some(p => p.status === onboard_1.OnboardStatus.PREPARE)).toBe(true);
121
- expect(progressValues.some(p => p.status === onboard_1.OnboardStatus.SIGN)).toBe(true);
122
- expect(progressValues.some(p => p.status === onboard_1.OnboardStatus.SUBMIT)).toBe(true);
123
- // Check final result
124
- expect(resultValues.length).toBeGreaterThan(0);
125
- const finalResult = resultValues[resultValues.length - 1];
126
- expect(finalResult.partyId).toBeDefined();
127
- expect(typeof finalResult.partyId).toBe("string");
128
- expect(mockSignerContext).toHaveBeenCalled();
129
- }, 30000);
130
- it("should complete full onboarding flow with already onboarded account", async () => {
131
- // GIVEN
132
- const { mockSignerContext, onboardResult: firstResult } = getOnboardedAccount();
133
- const secondOnboardObservable = (0, onboard_2.buildOnboardAccount)(mockSignerContext);
134
- // WHEN
135
- const secondOnboardValues = await (0, rxjs_1.firstValueFrom)(secondOnboardObservable(mockCurrency, mockDeviceId, mockAccount).pipe((0, rxjs_1.toArray)()));
136
- const secondResult = secondOnboardValues.find((value) => "partyId" in value);
137
- // THEN
138
- expect(secondResult).toBeDefined();
139
- expect(secondResult.partyId).toBe(firstResult.partyId);
140
- expect(typeof secondResult.partyId).toBe("string");
141
- }, 30000);
142
- });
143
- describe("buildAuthorizePreapproval", () => {
144
- it("should complete preapproval flow for onboarded account", async () => {
145
- // GIVEN
146
- const { mockSignerContext, onboardResult } = getOnboardedAccount();
147
- const preapprovalObservable = (0, onboard_2.buildAuthorizePreapproval)(mockSignerContext);
148
- // WHEN
149
- const preapprovalValues = await (0, rxjs_1.firstValueFrom)(preapprovalObservable(mockCurrency, mockDeviceId, mockAccount, onboardResult.partyId).pipe((0, rxjs_1.toArray)()));
150
- const progressValues = preapprovalValues.filter((value) => "status" in value && !("isApproved" in value));
151
- const resultValues = preapprovalValues.filter((value) => "isApproved" in value);
152
- // THEN
153
- // Check expected status progression
154
- expect(progressValues.some(p => p.status === onboard_1.AuthorizeStatus.PREPARE)).toBe(true);
155
- expect(progressValues.some(p => p.status === onboard_1.AuthorizeStatus.SIGN)).toBe(true);
156
- expect(progressValues.some(p => p.status === onboard_1.AuthorizeStatus.SUBMIT)).toBe(true);
157
- // Check final result (should be approved)
158
- expect(resultValues.length).toBeGreaterThan(0);
159
- const finalResult = resultValues[resultValues.length - 1];
160
- expect(finalResult.isApproved).toBe(true);
161
- expect(typeof finalResult.isApproved).toBe("boolean");
162
- }, 30000);
163
- it("should handle invalid party ID gracefully", async () => {
164
- // GIVEN
165
- const keyPair = (0, cantonTestUtils_1.generateMockKeyPair)();
166
- const mockSigner = (0, cantonTestUtils_1.createMockSigner)(keyPair);
167
- const mockSignerContext = jest.fn().mockImplementation((deviceId, callback) => {
168
- return callback(mockSigner);
169
- });
170
- const preapprovalObservable = (0, onboard_2.buildAuthorizePreapproval)(mockSignerContext);
171
- // WHEN & THEN
172
- try {
173
- await (0, rxjs_1.firstValueFrom)(preapprovalObservable(mockCurrency, mockDeviceId, mockAccount, "invalid-party-id-123"));
174
- expect(true).toBe(true);
175
- }
176
- catch (error) {
177
- expect(error).toBeDefined();
178
- }
179
- }, 30000);
180
- });
181
- });
182
- //# sourceMappingURL=onboard.integ.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onboard.integ.test.js","sourceRoot":"","sources":["../../src/bridge/onboard.integ.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=onboard.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onboard.test.d.ts","sourceRoot":"","sources":["../../src/bridge/onboard.test.ts"],"names":[],"mappings":""}