@ledgerhq/coin-vechain 2.11.0-nightly.5 → 2.11.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 (179) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +18 -0
  3. package/package.json +6 -6
  4. package/lib/bridge/broadcast.test.d.ts +0 -2
  5. package/lib/bridge/broadcast.test.d.ts.map +0 -1
  6. package/lib/bridge/broadcast.test.js +0 -188
  7. package/lib/bridge/broadcast.test.js.map +0 -1
  8. package/lib/bridge/buildOptimisticOperatioin.test.d.ts +0 -2
  9. package/lib/bridge/buildOptimisticOperatioin.test.d.ts.map +0 -1
  10. package/lib/bridge/buildOptimisticOperatioin.test.js +0 -286
  11. package/lib/bridge/buildOptimisticOperatioin.test.js.map +0 -1
  12. package/lib/bridge/createTransaction.test.d.ts +0 -2
  13. package/lib/bridge/createTransaction.test.d.ts.map +0 -1
  14. package/lib/bridge/createTransaction.test.js +0 -167
  15. package/lib/bridge/createTransaction.test.js.map +0 -1
  16. package/lib/bridge/estimateMaxSpendable.test.d.ts +0 -2
  17. package/lib/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
  18. package/lib/bridge/estimateMaxSpendable.test.js +0 -269
  19. package/lib/bridge/estimateMaxSpendable.test.js.map +0 -1
  20. package/lib/bridge/getTransactionStatus.test.d.ts +0 -2
  21. package/lib/bridge/getTransactionStatus.test.d.ts.map +0 -1
  22. package/lib/bridge/getTransactionStatus.test.js +0 -282
  23. package/lib/bridge/getTransactionStatus.test.js.map +0 -1
  24. package/lib/bridge/helpers.test.d.ts +0 -2
  25. package/lib/bridge/helpers.test.d.ts.map +0 -1
  26. package/lib/bridge/helpers.test.js +0 -298
  27. package/lib/bridge/helpers.test.js.map +0 -1
  28. package/lib/bridge/prepareTransaction.test.d.ts +0 -2
  29. package/lib/bridge/prepareTransaction.test.d.ts.map +0 -1
  30. package/lib/bridge/prepareTransaction.test.js +0 -277
  31. package/lib/bridge/prepareTransaction.test.js.map +0 -1
  32. package/lib/bridge/signOperation.test.d.ts +0 -2
  33. package/lib/bridge/signOperation.test.d.ts.map +0 -1
  34. package/lib/bridge/signOperation.test.js +0 -295
  35. package/lib/bridge/signOperation.test.js.map +0 -1
  36. package/lib/bridge/synchronisation.test.d.ts +0 -2
  37. package/lib/bridge/synchronisation.test.d.ts.map +0 -1
  38. package/lib/bridge/synchronisation.test.js +0 -201
  39. package/lib/bridge/synchronisation.test.js.map +0 -1
  40. package/lib/bridge/transaction.test.d.ts +0 -2
  41. package/lib/bridge/transaction.test.d.ts.map +0 -1
  42. package/lib/bridge/transaction.test.js +0 -353
  43. package/lib/bridge/transaction.test.js.map +0 -1
  44. package/lib/common-logic/calculateClauses.test.d.ts +0 -2
  45. package/lib/common-logic/calculateClauses.test.d.ts.map +0 -1
  46. package/lib/common-logic/calculateClauses.test.js +0 -156
  47. package/lib/common-logic/calculateClauses.test.js.map +0 -1
  48. package/lib/common-logic/calculateGasFees.test.d.ts +0 -2
  49. package/lib/common-logic/calculateGasFees.test.d.ts.map +0 -1
  50. package/lib/common-logic/calculateGasFees.test.js +0 -279
  51. package/lib/common-logic/calculateGasFees.test.js.map +0 -1
  52. package/lib/common-logic/calculateTransactionInfo.test.d.ts +0 -2
  53. package/lib/common-logic/calculateTransactionInfo.test.d.ts.map +0 -1
  54. package/lib/common-logic/calculateTransactionInfo.test.js +0 -314
  55. package/lib/common-logic/calculateTransactionInfo.test.js.map +0 -1
  56. package/lib/common-logic/estimateGas.test.d.ts +0 -2
  57. package/lib/common-logic/estimateGas.test.d.ts.map +0 -1
  58. package/lib/common-logic/estimateGas.test.js +0 -129
  59. package/lib/common-logic/estimateGas.test.js.map +0 -1
  60. package/lib/common-logic/fixPrefixCase.test.d.ts +0 -2
  61. package/lib/common-logic/fixPrefixCase.test.d.ts.map +0 -1
  62. package/lib/common-logic/fixPrefixCase.test.js +0 -46
  63. package/lib/common-logic/fixPrefixCase.test.js.map +0 -1
  64. package/lib/common-logic/generateNonce.test.d.ts +0 -2
  65. package/lib/common-logic/generateNonce.test.d.ts.map +0 -1
  66. package/lib/common-logic/generateNonce.test.js +0 -59
  67. package/lib/common-logic/generateNonce.test.js.map +0 -1
  68. package/lib/common-logic/getThorClient.test.d.ts +0 -2
  69. package/lib/common-logic/getThorClient.test.d.ts.map +0 -1
  70. package/lib/common-logic/getThorClient.test.js +0 -53
  71. package/lib/common-logic/getThorClient.test.js.map +0 -1
  72. package/lib/common-logic/mapTransfersToOperations.test.d.ts +0 -2
  73. package/lib/common-logic/mapTransfersToOperations.test.d.ts.map +0 -1
  74. package/lib/common-logic/mapTransfersToOperations.test.js +0 -274
  75. package/lib/common-logic/mapTransfersToOperations.test.js.map +0 -1
  76. package/lib/common-logic/padAddress.test.d.ts +0 -2
  77. package/lib/common-logic/padAddress.test.d.ts.map +0 -1
  78. package/lib/common-logic/padAddress.test.js +0 -59
  79. package/lib/common-logic/padAddress.test.js.map +0 -1
  80. package/lib/common-logic/parseAddress.test.d.ts +0 -2
  81. package/lib/common-logic/parseAddress.test.d.ts.map +0 -1
  82. package/lib/common-logic/parseAddress.test.js +0 -97
  83. package/lib/common-logic/parseAddress.test.js.map +0 -1
  84. package/lib/signer/getAddress.test.d.ts +0 -2
  85. package/lib/signer/getAddress.test.d.ts.map +0 -1
  86. package/lib/signer/getAddress.test.js +0 -357
  87. package/lib/signer/getAddress.test.js.map +0 -1
  88. package/lib/signer/signMessage.test.d.ts +0 -2
  89. package/lib/signer/signMessage.test.d.ts.map +0 -1
  90. package/lib/signer/signMessage.test.js +0 -242
  91. package/lib/signer/signMessage.test.js.map +0 -1
  92. package/lib-es/bridge/broadcast.test.d.ts +0 -2
  93. package/lib-es/bridge/broadcast.test.d.ts.map +0 -1
  94. package/lib-es/bridge/broadcast.test.js +0 -183
  95. package/lib-es/bridge/broadcast.test.js.map +0 -1
  96. package/lib-es/bridge/buildOptimisticOperatioin.test.d.ts +0 -2
  97. package/lib-es/bridge/buildOptimisticOperatioin.test.d.ts.map +0 -1
  98. package/lib-es/bridge/buildOptimisticOperatioin.test.js +0 -281
  99. package/lib-es/bridge/buildOptimisticOperatioin.test.js.map +0 -1
  100. package/lib-es/bridge/createTransaction.test.d.ts +0 -2
  101. package/lib-es/bridge/createTransaction.test.d.ts.map +0 -1
  102. package/lib-es/bridge/createTransaction.test.js +0 -162
  103. package/lib-es/bridge/createTransaction.test.js.map +0 -1
  104. package/lib-es/bridge/estimateMaxSpendable.test.d.ts +0 -2
  105. package/lib-es/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
  106. package/lib-es/bridge/estimateMaxSpendable.test.js +0 -264
  107. package/lib-es/bridge/estimateMaxSpendable.test.js.map +0 -1
  108. package/lib-es/bridge/getTransactionStatus.test.d.ts +0 -2
  109. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +0 -1
  110. package/lib-es/bridge/getTransactionStatus.test.js +0 -277
  111. package/lib-es/bridge/getTransactionStatus.test.js.map +0 -1
  112. package/lib-es/bridge/helpers.test.d.ts +0 -2
  113. package/lib-es/bridge/helpers.test.d.ts.map +0 -1
  114. package/lib-es/bridge/helpers.test.js +0 -293
  115. package/lib-es/bridge/helpers.test.js.map +0 -1
  116. package/lib-es/bridge/prepareTransaction.test.d.ts +0 -2
  117. package/lib-es/bridge/prepareTransaction.test.d.ts.map +0 -1
  118. package/lib-es/bridge/prepareTransaction.test.js +0 -272
  119. package/lib-es/bridge/prepareTransaction.test.js.map +0 -1
  120. package/lib-es/bridge/signOperation.test.d.ts +0 -2
  121. package/lib-es/bridge/signOperation.test.d.ts.map +0 -1
  122. package/lib-es/bridge/signOperation.test.js +0 -290
  123. package/lib-es/bridge/signOperation.test.js.map +0 -1
  124. package/lib-es/bridge/synchronisation.test.d.ts +0 -2
  125. package/lib-es/bridge/synchronisation.test.d.ts.map +0 -1
  126. package/lib-es/bridge/synchronisation.test.js +0 -196
  127. package/lib-es/bridge/synchronisation.test.js.map +0 -1
  128. package/lib-es/bridge/transaction.test.d.ts +0 -2
  129. package/lib-es/bridge/transaction.test.d.ts.map +0 -1
  130. package/lib-es/bridge/transaction.test.js +0 -347
  131. package/lib-es/bridge/transaction.test.js.map +0 -1
  132. package/lib-es/common-logic/calculateClauses.test.d.ts +0 -2
  133. package/lib-es/common-logic/calculateClauses.test.d.ts.map +0 -1
  134. package/lib-es/common-logic/calculateClauses.test.js +0 -151
  135. package/lib-es/common-logic/calculateClauses.test.js.map +0 -1
  136. package/lib-es/common-logic/calculateGasFees.test.d.ts +0 -2
  137. package/lib-es/common-logic/calculateGasFees.test.d.ts.map +0 -1
  138. package/lib-es/common-logic/calculateGasFees.test.js +0 -274
  139. package/lib-es/common-logic/calculateGasFees.test.js.map +0 -1
  140. package/lib-es/common-logic/calculateTransactionInfo.test.d.ts +0 -2
  141. package/lib-es/common-logic/calculateTransactionInfo.test.d.ts.map +0 -1
  142. package/lib-es/common-logic/calculateTransactionInfo.test.js +0 -309
  143. package/lib-es/common-logic/calculateTransactionInfo.test.js.map +0 -1
  144. package/lib-es/common-logic/estimateGas.test.d.ts +0 -2
  145. package/lib-es/common-logic/estimateGas.test.d.ts.map +0 -1
  146. package/lib-es/common-logic/estimateGas.test.js +0 -127
  147. package/lib-es/common-logic/estimateGas.test.js.map +0 -1
  148. package/lib-es/common-logic/fixPrefixCase.test.d.ts +0 -2
  149. package/lib-es/common-logic/fixPrefixCase.test.d.ts.map +0 -1
  150. package/lib-es/common-logic/fixPrefixCase.test.js +0 -44
  151. package/lib-es/common-logic/fixPrefixCase.test.js.map +0 -1
  152. package/lib-es/common-logic/generateNonce.test.d.ts +0 -2
  153. package/lib-es/common-logic/generateNonce.test.d.ts.map +0 -1
  154. package/lib-es/common-logic/generateNonce.test.js +0 -57
  155. package/lib-es/common-logic/generateNonce.test.js.map +0 -1
  156. package/lib-es/common-logic/getThorClient.test.d.ts +0 -2
  157. package/lib-es/common-logic/getThorClient.test.d.ts.map +0 -1
  158. package/lib-es/common-logic/getThorClient.test.js +0 -51
  159. package/lib-es/common-logic/getThorClient.test.js.map +0 -1
  160. package/lib-es/common-logic/mapTransfersToOperations.test.d.ts +0 -2
  161. package/lib-es/common-logic/mapTransfersToOperations.test.d.ts.map +0 -1
  162. package/lib-es/common-logic/mapTransfersToOperations.test.js +0 -269
  163. package/lib-es/common-logic/mapTransfersToOperations.test.js.map +0 -1
  164. package/lib-es/common-logic/padAddress.test.d.ts +0 -2
  165. package/lib-es/common-logic/padAddress.test.d.ts.map +0 -1
  166. package/lib-es/common-logic/padAddress.test.js +0 -57
  167. package/lib-es/common-logic/padAddress.test.js.map +0 -1
  168. package/lib-es/common-logic/parseAddress.test.d.ts +0 -2
  169. package/lib-es/common-logic/parseAddress.test.d.ts.map +0 -1
  170. package/lib-es/common-logic/parseAddress.test.js +0 -95
  171. package/lib-es/common-logic/parseAddress.test.js.map +0 -1
  172. package/lib-es/signer/getAddress.test.d.ts +0 -2
  173. package/lib-es/signer/getAddress.test.d.ts.map +0 -1
  174. package/lib-es/signer/getAddress.test.js +0 -352
  175. package/lib-es/signer/getAddress.test.js.map +0 -1
  176. package/lib-es/signer/signMessage.test.d.ts +0 -2
  177. package/lib-es/signer/signMessage.test.d.ts.map +0 -1
  178. package/lib-es/signer/signMessage.test.js +0 -240
  179. package/lib-es/signer/signMessage.test.js.map +0 -1
@@ -1,151 +0,0 @@
1
- import BigNumber from "bignumber.js";
2
- import { ABIContract, VIP180_ABI, VTHO_ADDRESS } from "@vechain/sdk-core";
3
- import { calculateClausesVtho, calculateClausesVet } from "./calculateClauses";
4
- describe("calculateClauses", () => {
5
- const testRecipient = "0x1234567890123456789012345678901234567890";
6
- const testAmount = new BigNumber("1000000000000000000"); // 1 VET/VTHO in wei
7
- describe("calculateClausesVtho", () => {
8
- it("should create correct VTHO transfer clause", async () => {
9
- const clauses = await calculateClausesVtho(testRecipient, testAmount);
10
- expect(clauses).toHaveLength(1);
11
- expect(clauses[0]).toMatchObject({
12
- to: VTHO_ADDRESS,
13
- value: 0,
14
- });
15
- expect(clauses[0].data).toMatch(/^0x/);
16
- expect(clauses[0].data).not.toBe("0x");
17
- });
18
- it("should encode transfer function call in data field", async () => {
19
- const clauses = await calculateClausesVtho(testRecipient, testAmount);
20
- // The data should be the encoded function call for transfer(address,uint256)
21
- const expectedData = ABIContract.ofAbi(VIP180_ABI)
22
- .encodeFunctionInput("transfer", [testRecipient, testAmount.toFixed()])
23
- .toString();
24
- expect(clauses[0].data).toBe(expectedData);
25
- });
26
- it("should handle different amounts correctly", async () => {
27
- const amounts = [
28
- new BigNumber("1"), // 1 wei
29
- new BigNumber("1000"), // 1000 wei
30
- new BigNumber("1000000000000000000"), // 1 token
31
- new BigNumber("999999999999999999999999"), // large amount
32
- ];
33
- for (const amount of amounts) {
34
- const clauses = await calculateClausesVtho(testRecipient, amount);
35
- expect(clauses).toHaveLength(1);
36
- expect(clauses[0].to).toBe(VTHO_ADDRESS);
37
- expect(clauses[0].value).toBe(0);
38
- // Verify the amount is encoded correctly in the data
39
- const expectedData = ABIContract.ofAbi(VIP180_ABI)
40
- .encodeFunctionInput("transfer", [testRecipient, amount.toFixed()])
41
- .toString();
42
- expect(clauses[0].data).toBe(expectedData);
43
- }
44
- });
45
- it("should handle different recipients correctly", async () => {
46
- const recipients = [
47
- "0x1234567890123456789012345678901234567890",
48
- "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd",
49
- "0x0000000000000000000000000000000000000000",
50
- "0xffffffffffffffffffffffffffffffffffffffff",
51
- ];
52
- for (const recipient of recipients) {
53
- const clauses = await calculateClausesVtho(recipient, testAmount);
54
- expect(clauses).toHaveLength(1);
55
- expect(clauses[0].to).toBe(VTHO_ADDRESS);
56
- // Verify the recipient is encoded correctly in the data
57
- const expectedData = ABIContract.ofAbi(VIP180_ABI)
58
- .encodeFunctionInput("transfer", [recipient, testAmount.toFixed()])
59
- .toString();
60
- expect(clauses[0].data).toBe(expectedData);
61
- }
62
- });
63
- it("should handle integer amounts correctly", async () => {
64
- const integerAmount = new BigNumber("1500000000000000000"); // 1.5 * 10^18 as integer
65
- const clauses = await calculateClausesVtho(testRecipient, integerAmount);
66
- const expectedData = ABIContract.ofAbi(VIP180_ABI)
67
- .encodeFunctionInput("transfer", [testRecipient, integerAmount.toFixed()])
68
- .toString();
69
- expect(clauses[0].data).toBe(expectedData);
70
- });
71
- });
72
- describe("calculateClausesVet", () => {
73
- it("should create correct VET transfer clause", async () => {
74
- const clauses = await calculateClausesVet(testRecipient, testAmount);
75
- expect(clauses).toHaveLength(1);
76
- expect(clauses[0]).toMatchObject({
77
- to: testRecipient,
78
- value: `0x${testAmount.toString(16)}`,
79
- data: "0x",
80
- });
81
- });
82
- it("should convert amount to hex correctly", async () => {
83
- const testCases = [
84
- { amount: new BigNumber("1"), expectedHex: "0x1" },
85
- { amount: new BigNumber("255"), expectedHex: "0xff" },
86
- { amount: new BigNumber("256"), expectedHex: "0x100" },
87
- { amount: new BigNumber("1000000000000000000"), expectedHex: "0xde0b6b3a7640000" },
88
- ];
89
- for (const testCase of testCases) {
90
- const clauses = await calculateClausesVet(testRecipient, testCase.amount);
91
- expect(clauses[0].value).toBe(testCase.expectedHex);
92
- expect(clauses[0].to).toBe(testRecipient);
93
- expect(clauses[0].data).toBe("0x");
94
- }
95
- });
96
- it("should handle different recipients correctly", async () => {
97
- const recipients = [
98
- "0x1234567890123456789012345678901234567890",
99
- "0xabcdefabcdefabcdefabcdefabcdefabcdefabcd",
100
- "0x0000000000000000000000000000000000000000",
101
- "0xffffffffffffffffffffffffffffffffffffffff",
102
- ];
103
- for (const recipient of recipients) {
104
- const clauses = await calculateClausesVet(recipient, testAmount);
105
- expect(clauses).toHaveLength(1);
106
- expect(clauses[0].to).toBe(recipient);
107
- expect(clauses[0].value).toBe(`0x${testAmount.toString(16)}`);
108
- expect(clauses[0].data).toBe("0x");
109
- }
110
- });
111
- it("should handle zero amount", async () => {
112
- const zeroAmount = new BigNumber("0");
113
- const clauses = await calculateClausesVet(testRecipient, zeroAmount);
114
- expect(clauses[0].value).toBe("0x0");
115
- expect(clauses[0].to).toBe(testRecipient);
116
- });
117
- it("should handle very large amounts", async () => {
118
- const largeAmount = new BigNumber("999999999999999999999999");
119
- const clauses = await calculateClausesVet(testRecipient, largeAmount);
120
- expect(clauses[0].value).toBe(`0x${largeAmount.toString(16)}`);
121
- expect(clauses[0].to).toBe(testRecipient);
122
- });
123
- it("should maintain data field as empty hex", async () => {
124
- const clauses = await calculateClausesVet(testRecipient, testAmount);
125
- expect(clauses[0].data).toBe("0x");
126
- });
127
- });
128
- describe("return value structure", () => {
129
- it("should always return an array of clauses", async () => {
130
- const vthoResult = await calculateClausesVtho(testRecipient, testAmount);
131
- const vetResult = await calculateClausesVet(testRecipient, testAmount);
132
- expect(Array.isArray(vthoResult)).toBe(true);
133
- expect(Array.isArray(vetResult)).toBe(true);
134
- expect(vthoResult).toHaveLength(1);
135
- expect(vetResult).toHaveLength(1);
136
- });
137
- it("should return clauses with required VechainSDKTransactionClause structure", async () => {
138
- const vthoResult = await calculateClausesVtho(testRecipient, testAmount);
139
- const vetResult = await calculateClausesVet(testRecipient, testAmount);
140
- // Check VTHO clause structure
141
- expect(vthoResult[0]).toHaveProperty("to");
142
- expect(vthoResult[0]).toHaveProperty("value");
143
- expect(vthoResult[0]).toHaveProperty("data");
144
- // Check VET clause structure
145
- expect(vetResult[0]).toHaveProperty("to");
146
- expect(vetResult[0]).toHaveProperty("value");
147
- expect(vetResult[0]).toHaveProperty("data");
148
- });
149
- });
150
- });
151
- //# sourceMappingURL=calculateClauses.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calculateClauses.test.js","sourceRoot":"","sources":["../../src/common-logic/calculateClauses.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=calculateGasFees.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calculateGasFees.test.d.ts","sourceRoot":"","sources":["../../src/common-logic/calculateGasFees.test.ts"],"names":[],"mappings":""}
@@ -1,274 +0,0 @@
1
- import BigNumber from "bignumber.js";
2
- import { calculateGasFees } from "./calculateGasFees";
3
- import { parseAddress } from "./parseAddress";
4
- import { calculateClausesVet, calculateClausesVtho } from "./calculateClauses";
5
- import { estimateGas } from "./estimateGas";
6
- import { getThorClient } from "./getThorClient";
7
- // Mock all dependencies
8
- jest.mock("./parseAddress");
9
- jest.mock("./calculateClauses");
10
- jest.mock("./estimateGas");
11
- jest.mock("./getThorClient");
12
- const mockedParseAddress = jest.mocked(parseAddress);
13
- const mockedCalculateClausesVet = jest.mocked(calculateClausesVet);
14
- const mockedCalculateClausesVtho = jest.mocked(calculateClausesVtho);
15
- const mockedEstimateGas = jest.mocked(estimateGas);
16
- const mockedGetThorClient = jest.mocked(getThorClient);
17
- describe("calculateGasFees", () => {
18
- const mockTransaction = {
19
- family: "vechain",
20
- recipient: "0x1234567890123456789012345678901234567890",
21
- amount: new BigNumber("1000000000000000000"), // 1 VET/VTHO
22
- estimatedFees: "0",
23
- body: {},
24
- };
25
- const mockClauses = [
26
- {
27
- to: "0x1234567890123456789012345678901234567890",
28
- value: "1000000000000000000",
29
- data: "0x",
30
- },
31
- ];
32
- const mockGasEstimation = {
33
- totalGas: 21000,
34
- reverted: false,
35
- revertReasons: [],
36
- vmErrors: [],
37
- };
38
- const mockThorClient = {
39
- transactions: {
40
- buildTransactionBody: jest.fn(),
41
- },
42
- };
43
- const mockTransactionBody = {
44
- maxFeePerGas: "20000000000", // 20 gwei
45
- maxPriorityFeePerGas: "1000000000", // 1 gwei
46
- };
47
- beforeEach(() => {
48
- jest.clearAllMocks();
49
- // Setup default mocks
50
- mockedGetThorClient.mockReturnValue(mockThorClient);
51
- mockThorClient.transactions.buildTransactionBody.mockResolvedValue(mockTransactionBody);
52
- });
53
- describe("Valid VET transactions (isTokenAccount = false)", () => {
54
- beforeEach(() => {
55
- mockedParseAddress.mockReturnValue(true);
56
- mockedCalculateClausesVet.mockResolvedValue(mockClauses);
57
- mockedEstimateGas.mockResolvedValue(mockGasEstimation);
58
- });
59
- it("should calculate gas fees for VET transfer", async () => {
60
- const result = await calculateGasFees(mockTransaction, false);
61
- expect(mockedParseAddress).toHaveBeenCalledWith(mockTransaction.recipient);
62
- expect(mockedCalculateClausesVet).toHaveBeenCalledWith(mockTransaction.recipient, mockTransaction.amount);
63
- expect(mockedCalculateClausesVtho).not.toHaveBeenCalled();
64
- expect(mockedEstimateGas).toHaveBeenCalledWith(mockClauses, mockTransaction.recipient);
65
- expect(mockThorClient.transactions.buildTransactionBody).toHaveBeenCalledWith(mockClauses, mockGasEstimation.totalGas, {});
66
- expect(result).toEqual({
67
- estimatedGas: 21000,
68
- estimatedGasFees: new BigNumber("420000000000000"), // 21000 * 20000000000
69
- maxFeePerGas: 20000000000,
70
- maxPriorityFeePerGas: 1000000000,
71
- });
72
- });
73
- it("should handle transaction body with null gas values", async () => {
74
- mockThorClient.transactions.buildTransactionBody.mockResolvedValue({
75
- maxFeePerGas: null,
76
- maxPriorityFeePerGas: null,
77
- });
78
- const result = await calculateGasFees(mockTransaction, false);
79
- expect(result).toEqual({
80
- estimatedGas: 21000,
81
- estimatedGasFees: new BigNumber("0"), // 21000 * 0
82
- maxFeePerGas: 0,
83
- maxPriorityFeePerGas: 0,
84
- });
85
- });
86
- it("should handle transaction body with undefined gas values", async () => {
87
- mockThorClient.transactions.buildTransactionBody.mockResolvedValue({});
88
- const result = await calculateGasFees(mockTransaction, false);
89
- expect(result).toEqual({
90
- estimatedGas: 21000,
91
- estimatedGasFees: new BigNumber("0"), // 21000 * 0
92
- maxFeePerGas: 0,
93
- maxPriorityFeePerGas: 0,
94
- });
95
- });
96
- it("should handle different gas estimation values", async () => {
97
- const customGasEstimation = {
98
- totalGas: 50000,
99
- reverted: false,
100
- revertReasons: [],
101
- vmErrors: [],
102
- };
103
- mockedEstimateGas.mockResolvedValue(customGasEstimation);
104
- const result = await calculateGasFees(mockTransaction, false);
105
- expect(result).toEqual({
106
- estimatedGas: 50000,
107
- estimatedGasFees: new BigNumber("1000000000000000"), // 50000 * 20000000000
108
- maxFeePerGas: 20000000000,
109
- maxPriorityFeePerGas: 1000000000,
110
- });
111
- });
112
- });
113
- describe("Valid VTHO transactions (isTokenAccount = true)", () => {
114
- beforeEach(() => {
115
- mockedParseAddress.mockReturnValue(true);
116
- mockedCalculateClausesVtho.mockResolvedValue(mockClauses);
117
- mockedEstimateGas.mockResolvedValue(mockGasEstimation);
118
- });
119
- it("should calculate gas fees for VTHO transfer", async () => {
120
- const result = await calculateGasFees(mockTransaction, true);
121
- expect(mockedParseAddress).toHaveBeenCalledWith(mockTransaction.recipient);
122
- expect(mockedCalculateClausesVtho).toHaveBeenCalledWith(mockTransaction.recipient, mockTransaction.amount);
123
- expect(mockedCalculateClausesVet).not.toHaveBeenCalled();
124
- expect(mockedEstimateGas).toHaveBeenCalledWith(mockClauses, mockTransaction.recipient);
125
- expect(mockThorClient.transactions.buildTransactionBody).toHaveBeenCalledWith(mockClauses, mockGasEstimation.totalGas, {});
126
- expect(result).toEqual({
127
- estimatedGas: 21000,
128
- estimatedGasFees: new BigNumber("420000000000000"), // 21000 * 20000000000
129
- maxFeePerGas: 20000000000,
130
- maxPriorityFeePerGas: 1000000000,
131
- });
132
- });
133
- it("should handle large amounts correctly", async () => {
134
- const largeAmountTransaction = {
135
- ...mockTransaction,
136
- amount: new BigNumber("999999999999999999999999"),
137
- };
138
- const result = await calculateGasFees(largeAmountTransaction, true);
139
- expect(mockedCalculateClausesVtho).toHaveBeenCalledWith(largeAmountTransaction.recipient, largeAmountTransaction.amount);
140
- expect(result.estimatedGas).toBe(21000);
141
- expect(result.estimatedGasFees).toEqual(new BigNumber("420000000000000"));
142
- });
143
- });
144
- describe("Invalid recipient scenarios", () => {
145
- it("should return zero values when recipient is undefined", async () => {
146
- const transactionWithoutRecipient = {
147
- ...mockTransaction,
148
- recipient: undefined,
149
- };
150
- const result = await calculateGasFees(transactionWithoutRecipient, false);
151
- expect(mockedParseAddress).not.toHaveBeenCalled();
152
- expect(mockedCalculateClausesVet).not.toHaveBeenCalled();
153
- expect(mockedCalculateClausesVtho).not.toHaveBeenCalled();
154
- expect(mockedEstimateGas).not.toHaveBeenCalled();
155
- expect(result).toEqual({
156
- estimatedGas: 0,
157
- estimatedGasFees: new BigNumber(0),
158
- maxFeePerGas: 0,
159
- maxPriorityFeePerGas: 0,
160
- });
161
- });
162
- it("should return zero values when recipient is null", async () => {
163
- const transactionWithNullRecipient = {
164
- ...mockTransaction,
165
- recipient: null,
166
- };
167
- const result = await calculateGasFees(transactionWithNullRecipient, false);
168
- expect(result).toEqual({
169
- estimatedGas: 0,
170
- estimatedGasFees: new BigNumber(0),
171
- maxFeePerGas: 0,
172
- maxPriorityFeePerGas: 0,
173
- });
174
- });
175
- it("should return zero values when parseAddress returns null/undefined", async () => {
176
- mockedParseAddress.mockReturnValue(false);
177
- const result = await calculateGasFees(mockTransaction, false);
178
- expect(mockedParseAddress).toHaveBeenCalledWith(mockTransaction.recipient);
179
- expect(mockedCalculateClausesVet).not.toHaveBeenCalled();
180
- expect(mockedCalculateClausesVtho).not.toHaveBeenCalled();
181
- expect(mockedEstimateGas).not.toHaveBeenCalled();
182
- expect(result).toEqual({
183
- estimatedGas: 0,
184
- estimatedGasFees: new BigNumber(0),
185
- maxFeePerGas: 0,
186
- maxPriorityFeePerGas: 0,
187
- });
188
- });
189
- it("should return zero values when parseAddress returns empty string", async () => {
190
- mockedParseAddress.mockReturnValue(false);
191
- const result = await calculateGasFees(mockTransaction, false);
192
- expect(result).toEqual({
193
- estimatedGas: 0,
194
- estimatedGasFees: new BigNumber(0),
195
- maxFeePerGas: 0,
196
- maxPriorityFeePerGas: 0,
197
- });
198
- });
199
- });
200
- describe("Error handling", () => {
201
- beforeEach(() => {
202
- mockedParseAddress.mockReturnValue(true);
203
- });
204
- it("should throw error when calculateClausesVet fails", async () => {
205
- const error = new Error("Failed to calculate VET clauses");
206
- mockedCalculateClausesVet.mockRejectedValue(error);
207
- await expect(calculateGasFees(mockTransaction, false)).rejects.toThrow("Failed to calculate VET clauses");
208
- });
209
- it("should throw error when calculateClausesVtho fails", async () => {
210
- const error = new Error("Failed to calculate VTHO clauses");
211
- mockedCalculateClausesVtho.mockRejectedValue(error);
212
- await expect(calculateGasFees(mockTransaction, true)).rejects.toThrow("Failed to calculate VTHO clauses");
213
- });
214
- it("should throw error when estimateGas fails", async () => {
215
- mockedCalculateClausesVet.mockResolvedValue(mockClauses);
216
- const error = new Error("Failed to estimate gas");
217
- mockedEstimateGas.mockRejectedValue(error);
218
- await expect(calculateGasFees(mockTransaction, false)).rejects.toThrow("Failed to estimate gas");
219
- });
220
- it("should throw error when buildTransactionBody fails", async () => {
221
- mockedCalculateClausesVet.mockResolvedValue(mockClauses);
222
- mockedEstimateGas.mockResolvedValue(mockGasEstimation);
223
- const error = new Error("Failed to build transaction body");
224
- mockThorClient.transactions.buildTransactionBody.mockRejectedValue(error);
225
- await expect(calculateGasFees(mockTransaction, false)).rejects.toThrow("Failed to build transaction body");
226
- });
227
- });
228
- describe("Edge cases", () => {
229
- beforeEach(() => {
230
- mockedParseAddress.mockReturnValue(true);
231
- mockedCalculateClausesVet.mockResolvedValue(mockClauses);
232
- mockedEstimateGas.mockResolvedValue(mockGasEstimation);
233
- });
234
- it("should handle zero amount transactions", async () => {
235
- const zeroAmountTransaction = {
236
- ...mockTransaction,
237
- amount: new BigNumber("0"),
238
- };
239
- const result = await calculateGasFees(zeroAmountTransaction, false);
240
- expect(mockedCalculateClausesVet).toHaveBeenCalledWith(zeroAmountTransaction.recipient, new BigNumber("0"));
241
- expect(result.estimatedGas).toBe(21000);
242
- });
243
- it("should handle zero gas estimation", async () => {
244
- mockedEstimateGas.mockResolvedValue({
245
- totalGas: 0,
246
- reverted: false,
247
- revertReasons: [],
248
- vmErrors: [],
249
- });
250
- const result = await calculateGasFees(mockTransaction, false);
251
- expect(result).toEqual({
252
- estimatedGas: 0,
253
- estimatedGasFees: new BigNumber("0"), // 0 * 20000000000
254
- maxFeePerGas: 20000000000,
255
- maxPriorityFeePerGas: 1000000000,
256
- });
257
- });
258
- it("should handle very high gas prices", async () => {
259
- const highGasTransactionBody = {
260
- maxFeePerGas: "1000000000000", // 1000 gwei
261
- maxPriorityFeePerGas: "100000000000", // 100 gwei
262
- };
263
- mockThorClient.transactions.buildTransactionBody.mockResolvedValue(highGasTransactionBody);
264
- const result = await calculateGasFees(mockTransaction, false);
265
- expect(result).toEqual({
266
- estimatedGas: 21000,
267
- estimatedGasFees: new BigNumber("21000000000000000"), // 21000 * 1000000000000
268
- maxFeePerGas: 1000000000000,
269
- maxPriorityFeePerGas: 100000000000,
270
- });
271
- });
272
- });
273
- });
274
- //# sourceMappingURL=calculateGasFees.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calculateGasFees.test.js","sourceRoot":"","sources":["../../src/common-logic/calculateGasFees.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=calculateTransactionInfo.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"calculateTransactionInfo.test.d.ts","sourceRoot":"","sources":["../../src/common-logic/calculateTransactionInfo.test.ts"],"names":[],"mappings":""}