@ledgerhq/coin-casper 2.2.0 → 2.2.1-nightly.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 (130) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/package.json +6 -6
  3. package/lib/api/index.integ.test.d.ts +0 -2
  4. package/lib/api/index.integ.test.d.ts.map +0 -1
  5. package/lib/api/index.integ.test.js +0 -53
  6. package/lib/api/index.integ.test.js.map +0 -1
  7. package/lib/api/index.test.d.ts +0 -2
  8. package/lib/api/index.test.d.ts.map +0 -1
  9. package/lib/api/index.test.js +0 -274
  10. package/lib/api/index.test.js.map +0 -1
  11. package/lib/bridge/bridgeHelpers/accountShape.test.d.ts +0 -2
  12. package/lib/bridge/bridgeHelpers/accountShape.test.d.ts.map +0 -1
  13. package/lib/bridge/bridgeHelpers/accountShape.test.js +0 -94
  14. package/lib/bridge/bridgeHelpers/accountShape.test.js.map +0 -1
  15. package/lib/bridge/bridgeHelpers/txn.test.d.ts +0 -2
  16. package/lib/bridge/bridgeHelpers/txn.test.d.ts.map +0 -1
  17. package/lib/bridge/bridgeHelpers/txn.test.js +0 -306
  18. package/lib/bridge/bridgeHelpers/txn.test.js.map +0 -1
  19. package/lib/bridge/broadcast.test.d.ts +0 -2
  20. package/lib/bridge/broadcast.test.d.ts.map +0 -1
  21. package/lib/bridge/broadcast.test.js +0 -72
  22. package/lib/bridge/broadcast.test.js.map +0 -1
  23. package/lib/bridge/buildOptimisticOperation.test.d.ts +0 -2
  24. package/lib/bridge/buildOptimisticOperation.test.d.ts.map +0 -1
  25. package/lib/bridge/buildOptimisticOperation.test.js +0 -76
  26. package/lib/bridge/buildOptimisticOperation.test.js.map +0 -1
  27. package/lib/bridge/createTransaction.test.d.ts +0 -2
  28. package/lib/bridge/createTransaction.test.d.ts.map +0 -1
  29. package/lib/bridge/createTransaction.test.js +0 -41
  30. package/lib/bridge/createTransaction.test.js.map +0 -1
  31. package/lib/bridge/deviceTransactionConfig.test.d.ts +0 -2
  32. package/lib/bridge/deviceTransactionConfig.test.d.ts.map +0 -1
  33. package/lib/bridge/deviceTransactionConfig.test.js +0 -148
  34. package/lib/bridge/deviceTransactionConfig.test.js.map +0 -1
  35. package/lib/bridge/estimateMaxSpendable.test.d.ts +0 -2
  36. package/lib/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
  37. package/lib/bridge/estimateMaxSpendable.test.js +0 -133
  38. package/lib/bridge/estimateMaxSpendable.test.js.map +0 -1
  39. package/lib/bridge/getTransactionStatus.test.d.ts +0 -2
  40. package/lib/bridge/getTransactionStatus.test.d.ts.map +0 -1
  41. package/lib/bridge/getTransactionStatus.test.js +0 -214
  42. package/lib/bridge/getTransactionStatus.test.js.map +0 -1
  43. package/lib/bridge/prepareTransaction.test.d.ts +0 -2
  44. package/lib/bridge/prepareTransaction.test.d.ts.map +0 -1
  45. package/lib/bridge/prepareTransaction.test.js +0 -159
  46. package/lib/bridge/prepareTransaction.test.js.map +0 -1
  47. package/lib/bridge/transaction.test.d.ts +0 -2
  48. package/lib/bridge/transaction.test.d.ts.map +0 -1
  49. package/lib/bridge/transaction.test.js +0 -179
  50. package/lib/bridge/transaction.test.js.map +0 -1
  51. package/lib/common-logic/utils.additional.test.d.ts +0 -2
  52. package/lib/common-logic/utils.additional.test.d.ts.map +0 -1
  53. package/lib/common-logic/utils.additional.test.js +0 -58
  54. package/lib/common-logic/utils.additional.test.js.map +0 -1
  55. package/lib/common-logic/utils.unit.test.d.ts +0 -2
  56. package/lib/common-logic/utils.unit.test.d.ts.map +0 -1
  57. package/lib/common-logic/utils.unit.test.js +0 -52
  58. package/lib/common-logic/utils.unit.test.js.map +0 -1
  59. package/lib/hw-signMessage.test.d.ts +0 -2
  60. package/lib/hw-signMessage.test.d.ts.map +0 -1
  61. package/lib/hw-signMessage.test.js +0 -80
  62. package/lib/hw-signMessage.test.js.map +0 -1
  63. package/lib/signer/getAddress.test.d.ts +0 -2
  64. package/lib/signer/getAddress.test.d.ts.map +0 -1
  65. package/lib/signer/getAddress.test.js +0 -133
  66. package/lib/signer/getAddress.test.js.map +0 -1
  67. package/lib-es/api/index.integ.test.d.ts +0 -2
  68. package/lib-es/api/index.integ.test.d.ts.map +0 -1
  69. package/lib-es/api/index.integ.test.js +0 -51
  70. package/lib-es/api/index.integ.test.js.map +0 -1
  71. package/lib-es/api/index.test.d.ts +0 -2
  72. package/lib-es/api/index.test.d.ts.map +0 -1
  73. package/lib-es/api/index.test.js +0 -269
  74. package/lib-es/api/index.test.js.map +0 -1
  75. package/lib-es/bridge/bridgeHelpers/accountShape.test.d.ts +0 -2
  76. package/lib-es/bridge/bridgeHelpers/accountShape.test.d.ts.map +0 -1
  77. package/lib-es/bridge/bridgeHelpers/accountShape.test.js +0 -89
  78. package/lib-es/bridge/bridgeHelpers/accountShape.test.js.map +0 -1
  79. package/lib-es/bridge/bridgeHelpers/txn.test.d.ts +0 -2
  80. package/lib-es/bridge/bridgeHelpers/txn.test.d.ts.map +0 -1
  81. package/lib-es/bridge/bridgeHelpers/txn.test.js +0 -278
  82. package/lib-es/bridge/bridgeHelpers/txn.test.js.map +0 -1
  83. package/lib-es/bridge/broadcast.test.d.ts +0 -2
  84. package/lib-es/bridge/broadcast.test.d.ts.map +0 -1
  85. package/lib-es/bridge/broadcast.test.js +0 -70
  86. package/lib-es/bridge/broadcast.test.js.map +0 -1
  87. package/lib-es/bridge/buildOptimisticOperation.test.d.ts +0 -2
  88. package/lib-es/bridge/buildOptimisticOperation.test.d.ts.map +0 -1
  89. package/lib-es/bridge/buildOptimisticOperation.test.js +0 -74
  90. package/lib-es/bridge/buildOptimisticOperation.test.js.map +0 -1
  91. package/lib-es/bridge/createTransaction.test.d.ts +0 -2
  92. package/lib-es/bridge/createTransaction.test.d.ts.map +0 -1
  93. package/lib-es/bridge/createTransaction.test.js +0 -36
  94. package/lib-es/bridge/createTransaction.test.js.map +0 -1
  95. package/lib-es/bridge/deviceTransactionConfig.test.d.ts +0 -2
  96. package/lib-es/bridge/deviceTransactionConfig.test.d.ts.map +0 -1
  97. package/lib-es/bridge/deviceTransactionConfig.test.js +0 -143
  98. package/lib-es/bridge/deviceTransactionConfig.test.js.map +0 -1
  99. package/lib-es/bridge/estimateMaxSpendable.test.d.ts +0 -2
  100. package/lib-es/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
  101. package/lib-es/bridge/estimateMaxSpendable.test.js +0 -131
  102. package/lib-es/bridge/estimateMaxSpendable.test.js.map +0 -1
  103. package/lib-es/bridge/getTransactionStatus.test.d.ts +0 -2
  104. package/lib-es/bridge/getTransactionStatus.test.d.ts.map +0 -1
  105. package/lib-es/bridge/getTransactionStatus.test.js +0 -212
  106. package/lib-es/bridge/getTransactionStatus.test.js.map +0 -1
  107. package/lib-es/bridge/prepareTransaction.test.d.ts +0 -2
  108. package/lib-es/bridge/prepareTransaction.test.d.ts.map +0 -1
  109. package/lib-es/bridge/prepareTransaction.test.js +0 -157
  110. package/lib-es/bridge/prepareTransaction.test.js.map +0 -1
  111. package/lib-es/bridge/transaction.test.d.ts +0 -2
  112. package/lib-es/bridge/transaction.test.d.ts.map +0 -1
  113. package/lib-es/bridge/transaction.test.js +0 -154
  114. package/lib-es/bridge/transaction.test.js.map +0 -1
  115. package/lib-es/common-logic/utils.additional.test.d.ts +0 -2
  116. package/lib-es/common-logic/utils.additional.test.d.ts.map +0 -1
  117. package/lib-es/common-logic/utils.additional.test.js +0 -56
  118. package/lib-es/common-logic/utils.additional.test.js.map +0 -1
  119. package/lib-es/common-logic/utils.unit.test.d.ts +0 -2
  120. package/lib-es/common-logic/utils.unit.test.d.ts.map +0 -1
  121. package/lib-es/common-logic/utils.unit.test.js +0 -50
  122. package/lib-es/common-logic/utils.unit.test.js.map +0 -1
  123. package/lib-es/hw-signMessage.test.d.ts +0 -2
  124. package/lib-es/hw-signMessage.test.d.ts.map +0 -1
  125. package/lib-es/hw-signMessage.test.js +0 -78
  126. package/lib-es/hw-signMessage.test.js.map +0 -1
  127. package/lib-es/signer/getAddress.test.d.ts +0 -2
  128. package/lib-es/signer/getAddress.test.d.ts.map +0 -1
  129. package/lib-es/signer/getAddress.test.js +0 -105
  130. package/lib-es/signer/getAddress.test.js.map +0 -1
@@ -1,157 +0,0 @@
1
- import { BigNumber } from "bignumber.js";
2
- import { prepareTransaction } from "./prepareTransaction";
3
- import { getEstimatedFees } from "./bridgeHelpers/fee";
4
- import { updateTransaction } from "@ledgerhq/coin-framework/bridge/jsHelpers";
5
- import { createMockAccount, createMockTransaction } from "../test/fixtures";
6
- // Mock dependencies
7
- jest.mock("./bridgeHelpers/fee", () => ({
8
- getEstimatedFees: jest.fn(),
9
- }));
10
- jest.mock("@ledgerhq/coin-framework/bridge/jsHelpers", () => ({
11
- updateTransaction: jest.fn((tx, updates) => ({ ...tx, ...updates })),
12
- }));
13
- describe("prepareTransaction", () => {
14
- const mockAccount = createMockAccount({
15
- id: "casper:0:testAccount",
16
- spendableBalance: new BigNumber(10000000),
17
- });
18
- const mockTransaction = createMockTransaction({
19
- recipient: "01fedcba0987654321",
20
- amount: new BigNumber(5000000),
21
- useAllAmount: false,
22
- fees: new BigNumber(1000000),
23
- transferId: "1",
24
- });
25
- const mockEstimatedFees = new BigNumber(1000000);
26
- beforeEach(() => {
27
- jest.clearAllMocks();
28
- getEstimatedFees.mockReturnValue(mockEstimatedFees);
29
- });
30
- test("should prepare a regular transaction with estimated fees", async () => {
31
- const result = await prepareTransaction(mockAccount, mockTransaction);
32
- expect(getEstimatedFees).toHaveBeenCalled();
33
- expect(updateTransaction).toHaveBeenCalledWith(mockTransaction, {
34
- fees: mockEstimatedFees,
35
- amount: mockTransaction.amount,
36
- });
37
- expect(result).toEqual({
38
- ...mockTransaction,
39
- fees: mockEstimatedFees,
40
- });
41
- });
42
- test("should calculate correct amount for useAllAmount transactions", async () => {
43
- const useAllAmountTx = createMockTransaction({
44
- ...mockTransaction,
45
- useAllAmount: true,
46
- });
47
- const result = await prepareTransaction(mockAccount, useAllAmountTx);
48
- const expectedAmount = mockAccount.spendableBalance.minus(mockEstimatedFees);
49
- expect(updateTransaction).toHaveBeenCalledWith(useAllAmountTx, {
50
- fees: mockEstimatedFees,
51
- amount: expectedAmount,
52
- });
53
- expect(result).toEqual({
54
- ...useAllAmountTx,
55
- fees: mockEstimatedFees,
56
- amount: expectedAmount,
57
- });
58
- });
59
- test("should recalculate amount for useAllAmount transactions after fee update", async () => {
60
- const useAllAmountTx = createMockTransaction({
61
- ...mockTransaction,
62
- useAllAmount: true,
63
- });
64
- const result = await prepareTransaction(mockAccount, useAllAmountTx);
65
- const expectedAmount = mockAccount.spendableBalance.minus(mockEstimatedFees);
66
- expect(result.amount).toEqual(expectedAmount);
67
- });
68
- // Using parameterized testing with fixtures
69
- describe("with test case fixtures", () => {
70
- // Define test cases inline for controlled fee values
71
- test.each([
72
- {
73
- name: "Standard transaction",
74
- account: createMockAccount({
75
- spendableBalance: new BigNumber("10000000000"),
76
- }),
77
- transaction: createMockTransaction({
78
- amount: new BigNumber("1000000000"),
79
- useAllAmount: false,
80
- }),
81
- expectedResult: {
82
- fees: mockEstimatedFees,
83
- amount: new BigNumber("1000000000"),
84
- },
85
- },
86
- {
87
- name: "Use all amount transaction",
88
- account: createMockAccount({
89
- spendableBalance: new BigNumber("10000000000"),
90
- }),
91
- transaction: createMockTransaction({
92
- useAllAmount: true,
93
- }),
94
- expectedResult: {
95
- fees: mockEstimatedFees,
96
- amount: new BigNumber("10000000000").minus(mockEstimatedFees),
97
- },
98
- },
99
- {
100
- name: "Low balance account",
101
- account: createMockAccount({
102
- spendableBalance: new BigNumber(mockEstimatedFees.div(2)),
103
- }),
104
- transaction: createMockTransaction({
105
- useAllAmount: true,
106
- }),
107
- expectedResult: {
108
- fees: mockEstimatedFees,
109
- // For low balance, amount should be negative (will be handled in the test)
110
- amount: new BigNumber(mockEstimatedFees.div(2)).minus(mockEstimatedFees),
111
- },
112
- },
113
- {
114
- name: "Exactly enough for fees",
115
- account: createMockAccount({
116
- spendableBalance: mockEstimatedFees,
117
- }),
118
- transaction: createMockTransaction({
119
- useAllAmount: true,
120
- }),
121
- expectedResult: {
122
- fees: mockEstimatedFees,
123
- // For exact fee balance, amount should be zero
124
- amount: new BigNumber("0"),
125
- },
126
- },
127
- {
128
- name: "Custom fee override",
129
- account: createMockAccount({
130
- spendableBalance: new BigNumber("10000000000"),
131
- }),
132
- transaction: createMockTransaction({
133
- fees: new BigNumber("2000000"),
134
- useAllAmount: true,
135
- }),
136
- expectedResult: {
137
- fees: mockEstimatedFees,
138
- amount: new BigNumber("10000000000").minus(mockEstimatedFees),
139
- },
140
- },
141
- ])("$name", async ({ account, transaction, expectedResult }) => {
142
- const result = await prepareTransaction(account, transaction);
143
- expect(result.fees).toEqual(expectedResult.fees);
144
- // For negative balance scenarios, just check they're less than or equal to zero
145
- if (account.spendableBalance.lt(mockEstimatedFees) && transaction.useAllAmount) {
146
- expect(result.amount.lte(new BigNumber("0"))).toBe(true);
147
- }
148
- else if (account.spendableBalance.eq(mockEstimatedFees) && transaction.useAllAmount) {
149
- expect(result.amount.eq(new BigNumber("0"))).toBe(true);
150
- }
151
- else {
152
- expect(result.amount).toEqual(expectedResult.amount);
153
- }
154
- });
155
- });
156
- });
157
- //# sourceMappingURL=prepareTransaction.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prepareTransaction.test.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=transaction.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transaction.test.d.ts","sourceRoot":"","sources":["../../src/bridge/transaction.test.ts"],"names":[],"mappings":""}
@@ -1,154 +0,0 @@
1
- import { BigNumber } from "bignumber.js";
2
- import transaction, { fromTransactionRaw, formatTransaction } from "./transaction";
3
- import { createMockAccount, createMockTransaction, TEST_ADDRESSES, TEST_TRANSFER_IDS, } from "../test/fixtures";
4
- describe("transaction", () => {
5
- // Using the createMockAccount function from fixtures
6
- const account = createMockAccount({
7
- id: "casper:0:testAccount",
8
- balance: new BigNumber(100000000),
9
- spendableBalance: new BigNumber(100000000),
10
- blockHeight: 123456,
11
- freshAddress: "0123456789",
12
- freshAddressPath: "44'/506'/0'/0/0",
13
- lastSyncDate: new Date(),
14
- });
15
- describe("formatTransaction", () => {
16
- test("should format a transaction with amount", () => {
17
- const tx = createMockTransaction({
18
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
19
- useAllAmount: false,
20
- amount: new BigNumber(50000000),
21
- fees: new BigNumber(1000000),
22
- transferId: "1",
23
- });
24
- const result = formatTransaction(tx, account);
25
- expect(result).toContain("SEND");
26
- expect(result).toContain("0.05");
27
- expect(result).toContain("CSPR");
28
- expect(result).toContain(`TO ${TEST_ADDRESSES.RECIPIENT_SECP256K1}`);
29
- });
30
- test("should format a transaction with useAllAmount", () => {
31
- const tx = createMockTransaction({
32
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
33
- useAllAmount: true,
34
- amount: new BigNumber(0),
35
- fees: new BigNumber(1000000),
36
- transferId: "1",
37
- });
38
- const result = formatTransaction(tx, account);
39
- expect(result).toContain("SEND MAX");
40
- expect(result).toContain(`TO ${TEST_ADDRESSES.RECIPIENT_SECP256K1}`);
41
- });
42
- test("should format a transaction with zero amount", () => {
43
- const tx = createMockTransaction({
44
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
45
- useAllAmount: false,
46
- amount: new BigNumber(0),
47
- fees: new BigNumber(1000000),
48
- transferId: "1",
49
- });
50
- const result = formatTransaction(tx, account);
51
- expect(result).toContain("SEND");
52
- expect(result).not.toContain("MAX");
53
- expect(result).not.toContain("CSPR");
54
- expect(result).toContain(`TO ${TEST_ADDRESSES.RECIPIENT_SECP256K1}`);
55
- });
56
- test("should format a transaction with different address formats", () => {
57
- // Test with ED25519 address format
58
- const tx = createMockTransaction({
59
- recipient: TEST_ADDRESSES.RECIPIENT_ED25519,
60
- amount: new BigNumber(50000000),
61
- });
62
- const result = formatTransaction(tx, account);
63
- expect(result).toContain(`TO ${TEST_ADDRESSES.RECIPIENT_ED25519}`);
64
- });
65
- test("should format a transaction with transfer ID", () => {
66
- const tx = createMockTransaction({
67
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
68
- amount: new BigNumber(50000000),
69
- transferId: TEST_TRANSFER_IDS.VALID,
70
- });
71
- const result = formatTransaction(tx, account);
72
- expect(result).toContain("0.05");
73
- expect(result).toContain("CSPR");
74
- expect(result).toContain(`TO ${TEST_ADDRESSES.RECIPIENT_SECP256K1}`);
75
- });
76
- });
77
- describe("fromTransactionRaw", () => {
78
- test("should convert a transaction raw to a transaction", () => {
79
- const raw = {
80
- family: "casper",
81
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
82
- useAllAmount: false,
83
- amount: "50000000",
84
- fees: "1000000",
85
- transferId: TEST_TRANSFER_IDS.VALID,
86
- };
87
- const result = fromTransactionRaw(raw);
88
- expect(result.family).toBe("casper");
89
- expect(result.recipient).toBe(TEST_ADDRESSES.RECIPIENT_SECP256K1);
90
- expect(result.useAllAmount).toBe(false);
91
- expect(result.amount).toEqual(new BigNumber(50000000));
92
- expect(result.fees).toEqual(new BigNumber(1000000));
93
- expect(result.transferId).toBe(TEST_TRANSFER_IDS.VALID);
94
- });
95
- test("should handle transaction raw without optional fields", () => {
96
- const raw = {
97
- family: "casper",
98
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
99
- useAllAmount: false,
100
- amount: "50000000",
101
- fees: "1000000",
102
- };
103
- const result = fromTransactionRaw(raw);
104
- expect(result.family).toBe("casper");
105
- expect(result.transferId).toBeUndefined();
106
- });
107
- });
108
- describe("toTransactionRaw", () => {
109
- test("should convert a transaction to a transaction raw", () => {
110
- const tx = createMockTransaction({
111
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
112
- useAllAmount: false,
113
- amount: new BigNumber(50000000),
114
- fees: new BigNumber(1000000),
115
- transferId: TEST_TRANSFER_IDS.VALID,
116
- });
117
- const result = transaction.toTransactionRaw(tx);
118
- expect(result.family).toBe("casper");
119
- expect(result.recipient).toBe(TEST_ADDRESSES.RECIPIENT_SECP256K1);
120
- expect(result.useAllAmount).toBe(false);
121
- expect(result.amount).toBe("50000000");
122
- expect(result.fees).toBe("1000000");
123
- expect(result.transferId).toBe(TEST_TRANSFER_IDS.VALID);
124
- });
125
- test("should handle transaction without optional fields", () => {
126
- const tx = createMockTransaction({
127
- recipient: TEST_ADDRESSES.RECIPIENT_SECP256K1,
128
- useAllAmount: false,
129
- amount: new BigNumber(50000000),
130
- fees: new BigNumber(1000000),
131
- transferId: undefined,
132
- });
133
- const result = transaction.toTransactionRaw(tx);
134
- expect(result.transferId).toBeUndefined();
135
- });
136
- test("should handle different transaction scenarios", () => {
137
- // Test with useAllAmount = true
138
- const maxTx = createMockTransaction({
139
- useAllAmount: true,
140
- amount: new BigNumber(0),
141
- });
142
- const maxResult = transaction.toTransactionRaw(maxTx);
143
- expect(maxResult.useAllAmount).toBe(true);
144
- expect(maxResult.amount).toBe("0");
145
- // Test with very large amount
146
- const largeTx = createMockTransaction({
147
- amount: new BigNumber("9999000000000"), // 9,999 CSPR
148
- });
149
- const largeResult = transaction.toTransactionRaw(largeTx);
150
- expect(largeResult.amount).toBe("9999000000000");
151
- });
152
- });
153
- });
154
- //# sourceMappingURL=transaction.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transaction.test.js","sourceRoot":"","sources":["../../src/bridge/transaction.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=utils.additional.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.additional.test.d.ts","sourceRoot":"","sources":["../../src/common-logic/utils.additional.test.ts"],"names":[],"mappings":""}
@@ -1,56 +0,0 @@
1
- import { isNoErrorReturnCode, getPath, isError, methodToString, getRandomTransferID, } from "./utils";
2
- describe("Casper utils", () => {
3
- describe("isNoErrorReturnCode", () => {
4
- test("should return true for code 0x9000", () => {
5
- expect(isNoErrorReturnCode(0x9000)).toBe(true);
6
- });
7
- test("should return false for other codes", () => {
8
- expect(isNoErrorReturnCode(0x6984)).toBe(false);
9
- expect(isNoErrorReturnCode(0x6a80)).toBe(false);
10
- expect(isNoErrorReturnCode(0)).toBe(false);
11
- });
12
- });
13
- describe("getPath", () => {
14
- test("should add m/ prefix if not present", () => {
15
- expect(getPath("44'/506'/0'/0/0")).toBe("m/44'/506'/0'/0/0");
16
- });
17
- test("should not modify path if m/ prefix is already present", () => {
18
- expect(getPath("m/44'/506'/0'/0/0")).toBe("m/44'/506'/0'/0/0");
19
- });
20
- test("should handle empty path", () => {
21
- expect(getPath("")).toBe("");
22
- });
23
- });
24
- describe("isError", () => {
25
- test("should not throw for successful return code", () => {
26
- expect(() => isError({ returnCode: 0x9000, errorMessage: "Success" })).not.toThrow();
27
- });
28
- test("should throw for error return codes", () => {
29
- expect(() => isError({ returnCode: 0x6a80, errorMessage: "Bad data" })).toThrow("27264 - Bad data");
30
- });
31
- });
32
- describe("methodToString", () => {
33
- test("should return 'Token transfer' for method 0", () => {
34
- expect(methodToString(0)).toBe("Token transfer");
35
- });
36
- test("should return 'Unknown' for other methods", () => {
37
- expect(methodToString(1)).toBe("Unknown");
38
- expect(methodToString(999)).toBe("Unknown");
39
- });
40
- });
41
- describe("getRandomTransferID", () => {
42
- test("should return a string containing a number", () => {
43
- const result = getRandomTransferID();
44
- expect(typeof result).toBe("string");
45
- expect(Number.isNaN(parseInt(result, 10))).toBe(false);
46
- });
47
- test("should generate different IDs on multiple calls", () => {
48
- const id1 = getRandomTransferID();
49
- const id2 = getRandomTransferID();
50
- const id3 = getRandomTransferID();
51
- // There's a very small chance these could be the same, but it's extremely unlikely
52
- expect(new Set([id1, id2, id3]).size).toBeGreaterThan(0);
53
- });
54
- });
55
- });
56
- //# sourceMappingURL=utils.additional.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.additional.test.js","sourceRoot":"","sources":["../../src/common-logic/utils.additional.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=utils.unit.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.unit.test.d.ts","sourceRoot":"","sources":["../../src/common-logic/utils.unit.test.ts"],"names":[],"mappings":""}
@@ -1,50 +0,0 @@
1
- import { KeyAlgorithm } from "casper-js-sdk";
2
- import { casperAddressFromPubKey, isAddressValid } from "../bridge/bridgeHelpers/addresses";
3
- describe("Casper addresses", () => {
4
- const pubKeys = {
5
- // valid
6
- validSecp256k1: "0203a17118ec0e64c4e4fdbdbee0ea14d118c9aaf08c6c81bbb776cae607ceb84ecb",
7
- validEd25519: "016470ae57b0a3ad5a679d2e0422909bfb9ded445e20cbe6b4c9806f844c94d401",
8
- validSecp256k1Checksum: "0203A17118eC0e64c4e4FdbDbEe0eA14D118C9aAf08C6c81bbB776Cae607cEB84EcB", // Checksummed
9
- validEd25519Checksum: "016470AE57b0a3aD5A679d2e0422909Bfb9dEd445e20cbE6B4c9806f844c94d401", // Checksummed
10
- // invalid
11
- invalidSecp256k1: "0203A17118ec0e64c4e4fdbdbee0ea14d118c9aaf08c6c81bbc776cae607ceb84ecb",
12
- invalidEd25519: "016470ae57b0a3ad5a679d2e0422909bfb9ded445e20cbe6b8c9806f844c94D401",
13
- invalidAddresstype: "036470ae57b0a3ad5a679d2e0422909bfb9ded445e20cbe6b8c9806f844c94d401", // Invalid address type
14
- invalidLength: "12345", // Invalid length
15
- invalidCharacter: "xyz123", // Contains non-hex characters
16
- invalidChecksum: "016470ae57b0a3ad5a679d2e0422909bfb9ded445e20cbe6b4c9806f844c94D400", // Invalid checksum
17
- };
18
- test("Check if valid addresses are valid", () => {
19
- expect(isAddressValid(pubKeys.validEd25519)).toBe(true);
20
- expect(isAddressValid(pubKeys.validSecp256k1)).toBe(true);
21
- expect(isAddressValid(pubKeys.validSecp256k1Checksum)).toBe(true);
22
- expect(isAddressValid(pubKeys.validEd25519Checksum)).toBe(true);
23
- });
24
- test("Check if invalid addresses are invalid", () => {
25
- expect(isAddressValid(pubKeys.invalidEd25519)).toBe(false);
26
- expect(isAddressValid(pubKeys.invalidSecp256k1)).toBe(false);
27
- expect(isAddressValid(pubKeys.invalidLength)).toBe(false);
28
- expect(isAddressValid(pubKeys.invalidCharacter)).toBe(false);
29
- expect(isAddressValid(pubKeys.invalidChecksum)).toBe(false);
30
- });
31
- test("Get the address from the publick key", () => {
32
- /**
33
- * Extracts the public key and key signature from a given Casper address.
34
- *
35
- * @param {string} address - The Casper address from which to extract the public key and key signature.
36
- * @returns {{ pubkey: Buffer, keySig: CLPublicKeyTag }} An object containing the public key as a Buffer and the key signature as a CLPublicKeyTag.
37
- */
38
- function casperPubKeyFromAddress(address) {
39
- const keySig = parseInt(address.slice(0, 2), 10);
40
- const pubkeyHex = address.slice(2);
41
- const pubkey = Buffer.from(pubkeyHex, "hex");
42
- return { pubkey, keySig };
43
- }
44
- expect(casperAddressFromPubKey(casperPubKeyFromAddress(pubKeys.validSecp256k1).pubkey, KeyAlgorithm.SECP256K1)).toBe(pubKeys.validSecp256k1);
45
- expect(casperAddressFromPubKey(casperPubKeyFromAddress(pubKeys.validSecp256k1Checksum).pubkey, KeyAlgorithm.SECP256K1)).toBe(pubKeys.validSecp256k1Checksum.toLowerCase());
46
- expect(casperAddressFromPubKey(casperPubKeyFromAddress(pubKeys.validEd25519).pubkey, KeyAlgorithm.ED25519)).toBe(pubKeys.validEd25519);
47
- expect(casperAddressFromPubKey(casperPubKeyFromAddress(pubKeys.validEd25519Checksum).pubkey, KeyAlgorithm.ED25519)).toBe(pubKeys.validEd25519Checksum.toLowerCase());
48
- });
49
- });
50
- //# sourceMappingURL=utils.unit.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.unit.test.js","sourceRoot":"","sources":["../../src/common-logic/utils.unit.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAE5F,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,MAAM,OAAO,GAAG;QACd,QAAQ;QACR,cAAc,EAAE,sEAAsE;QACtF,YAAY,EAAE,oEAAoE;QAClF,sBAAsB,EAAE,sEAAsE,EAAE,cAAc;QAC9G,oBAAoB,EAAE,oEAAoE,EAAE,cAAc;QAC1G,UAAU;QACV,gBAAgB,EAAE,sEAAsE;QACxF,cAAc,EAAE,oEAAoE;QACpF,kBAAkB,EAAE,oEAAoE,EAAE,uBAAuB;QACjH,aAAa,EAAE,OAAO,EAAE,iBAAiB;QACzC,gBAAgB,EAAE,QAAQ,EAAE,8BAA8B;QAC1D,eAAe,EAAE,oEAAoE,EAAE,mBAAmB;KAC3G,CAAC;IAEF,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD;;;;;WAKG;QACH,SAAS,uBAAuB,CAAC,OAAe;YAI9C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAiB,CAAC;YACjE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,CACJ,uBAAuB,CACrB,uBAAuB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,MAAM,EACtD,YAAY,CAAC,SAAS,CACvB,CACF,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC/B,MAAM,CACJ,uBAAuB,CACrB,uBAAuB,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,MAAM,EAC9D,YAAY,CAAC,SAAS,CACvB,CACF,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC,CAAC;QACrD,MAAM,CACJ,uBAAuB,CACrB,uBAAuB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,EACpD,YAAY,CAAC,OAAO,CACrB,CACF,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC7B,MAAM,CACJ,uBAAuB,CACrB,uBAAuB,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,MAAM,EAC5D,YAAY,CAAC,OAAO,CACrB,CACF,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=hw-signMessage.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hw-signMessage.test.d.ts","sourceRoot":"","sources":["../src/hw-signMessage.test.ts"],"names":[],"mappings":""}
@@ -1,78 +0,0 @@
1
- import { signMessage } from "./hw-signMessage";
2
- describe("hw-signMessage", () => {
3
- // Test fixtures
4
- const mockDeviceId = "device_123";
5
- // Only define the properties actually used by the signMessage function
6
- const mockAccount = {
7
- freshAddressPath: "44'/506'/0'/0/1",
8
- };
9
- // Mock signature response
10
- const mockSignatureResponse = {
11
- errorMessage: "",
12
- returnCode: 0x9000,
13
- signatureRS: Buffer.from("00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff", "hex"),
14
- signatureRSV: Buffer.from("00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff01", "hex"),
15
- signature_compact: new Uint8Array(Buffer.from("00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff01", "hex")),
16
- };
17
- // Mock a successful signer
18
- const mockSigner = {
19
- showAddressAndPubKey: jest.fn(),
20
- getAddressAndPubKey: jest.fn(),
21
- sign: jest.fn().mockResolvedValue(mockSignatureResponse),
22
- };
23
- // Mock signerContext function
24
- const mockSignerContext = jest.fn((deviceId, callback) => callback(mockSigner));
25
- beforeEach(() => {
26
- jest.clearAllMocks();
27
- });
28
- test("should sign a plain text message correctly", async () => {
29
- const message = "Hello Casper Network";
30
- const result = await signMessage(mockSignerContext)(mockDeviceId, mockAccount, { message });
31
- // Verify the signer was called with correct parameters
32
- expect(mockSignerContext).toHaveBeenCalledWith(mockDeviceId, expect.any(Function));
33
- expect(mockSigner.sign).toHaveBeenCalledWith(mockAccount.freshAddressPath, expect.any(Buffer));
34
- // Verify the correct signature format is returned
35
- expect(result).toEqual({
36
- rsv: {
37
- r: "00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff",
38
- s: "01",
39
- v: NaN,
40
- },
41
- signature: "0x00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff01",
42
- });
43
- });
44
- test("should sign a hex message correctly", async () => {
45
- const message = "0x123456789abcdef";
46
- const result = await signMessage(mockSignerContext)(mockDeviceId, mockAccount, { message });
47
- expect(mockSigner.sign).toHaveBeenCalledWith(mockAccount.freshAddressPath, expect.any(Buffer));
48
- expect(result.signature).toBe("0x00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff01");
49
- });
50
- test("should sign a base64 message correctly", async () => {
51
- const message = "SGVsbG8gQ2FzcGVyIE5ldHdvcms="; // "Hello Casper Network" in base64
52
- const result = await signMessage(mockSignerContext)(mockDeviceId, mockAccount, { message });
53
- expect(mockSigner.sign).toHaveBeenCalledWith(mockAccount.freshAddressPath, expect.any(Buffer));
54
- expect(result.signature).toBe("0x00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff01");
55
- });
56
- test("should throw error if message is empty", async () => {
57
- await expect(signMessage(mockSignerContext)(mockDeviceId, mockAccount, { message: "" })).rejects.toThrow("Message cannot be empty");
58
- });
59
- test("should throw error if message is undefined", async () => {
60
- await expect(signMessage(mockSignerContext)(mockDeviceId, mockAccount, { message: undefined })).rejects.toThrow("Message cannot be empty");
61
- });
62
- test("should throw error if message is not a string", async () => {
63
- await expect(signMessage(mockSignerContext)(mockDeviceId, mockAccount, {
64
- message: { type: "EIP712" },
65
- })).rejects.toThrow("Signing EIP712Message not supported");
66
- });
67
- test("should propagate errors from the signer", async () => {
68
- // Mock an error from the signer
69
- const errorSigner = {
70
- showAddressAndPubKey: jest.fn(),
71
- getAddressAndPubKey: jest.fn(),
72
- sign: jest.fn().mockRejectedValue(new Error("Device disconnected")),
73
- };
74
- const errorSignerContext = jest.fn((deviceId, callback) => callback(errorSigner));
75
- await expect(signMessage(errorSignerContext)(mockDeviceId, mockAccount, { message: "test" })).rejects.toThrow("Device disconnected");
76
- });
77
- });
78
- //# sourceMappingURL=hw-signMessage.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hw-signMessage.test.js","sourceRoot":"","sources":["../src/hw-signMessage.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=getAddress.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getAddress.test.d.ts","sourceRoot":"","sources":["../../src/signer/getAddress.test.ts"],"names":[],"mappings":""}