@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.
- package/CHANGELOG.md +9 -0
- package/package.json +6 -6
- package/lib/api/index.integ.test.d.ts +0 -2
- package/lib/api/index.integ.test.d.ts.map +0 -1
- package/lib/api/index.integ.test.js +0 -53
- package/lib/api/index.integ.test.js.map +0 -1
- package/lib/api/index.test.d.ts +0 -2
- package/lib/api/index.test.d.ts.map +0 -1
- package/lib/api/index.test.js +0 -274
- package/lib/api/index.test.js.map +0 -1
- package/lib/bridge/bridgeHelpers/accountShape.test.d.ts +0 -2
- package/lib/bridge/bridgeHelpers/accountShape.test.d.ts.map +0 -1
- package/lib/bridge/bridgeHelpers/accountShape.test.js +0 -94
- package/lib/bridge/bridgeHelpers/accountShape.test.js.map +0 -1
- package/lib/bridge/bridgeHelpers/txn.test.d.ts +0 -2
- package/lib/bridge/bridgeHelpers/txn.test.d.ts.map +0 -1
- package/lib/bridge/bridgeHelpers/txn.test.js +0 -306
- package/lib/bridge/bridgeHelpers/txn.test.js.map +0 -1
- package/lib/bridge/broadcast.test.d.ts +0 -2
- package/lib/bridge/broadcast.test.d.ts.map +0 -1
- package/lib/bridge/broadcast.test.js +0 -72
- package/lib/bridge/broadcast.test.js.map +0 -1
- package/lib/bridge/buildOptimisticOperation.test.d.ts +0 -2
- package/lib/bridge/buildOptimisticOperation.test.d.ts.map +0 -1
- package/lib/bridge/buildOptimisticOperation.test.js +0 -76
- package/lib/bridge/buildOptimisticOperation.test.js.map +0 -1
- package/lib/bridge/createTransaction.test.d.ts +0 -2
- package/lib/bridge/createTransaction.test.d.ts.map +0 -1
- package/lib/bridge/createTransaction.test.js +0 -41
- package/lib/bridge/createTransaction.test.js.map +0 -1
- package/lib/bridge/deviceTransactionConfig.test.d.ts +0 -2
- package/lib/bridge/deviceTransactionConfig.test.d.ts.map +0 -1
- package/lib/bridge/deviceTransactionConfig.test.js +0 -148
- package/lib/bridge/deviceTransactionConfig.test.js.map +0 -1
- package/lib/bridge/estimateMaxSpendable.test.d.ts +0 -2
- package/lib/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
- package/lib/bridge/estimateMaxSpendable.test.js +0 -133
- package/lib/bridge/estimateMaxSpendable.test.js.map +0 -1
- package/lib/bridge/getTransactionStatus.test.d.ts +0 -2
- package/lib/bridge/getTransactionStatus.test.d.ts.map +0 -1
- package/lib/bridge/getTransactionStatus.test.js +0 -214
- package/lib/bridge/getTransactionStatus.test.js.map +0 -1
- package/lib/bridge/prepareTransaction.test.d.ts +0 -2
- package/lib/bridge/prepareTransaction.test.d.ts.map +0 -1
- package/lib/bridge/prepareTransaction.test.js +0 -159
- package/lib/bridge/prepareTransaction.test.js.map +0 -1
- package/lib/bridge/transaction.test.d.ts +0 -2
- package/lib/bridge/transaction.test.d.ts.map +0 -1
- package/lib/bridge/transaction.test.js +0 -179
- package/lib/bridge/transaction.test.js.map +0 -1
- package/lib/common-logic/utils.additional.test.d.ts +0 -2
- package/lib/common-logic/utils.additional.test.d.ts.map +0 -1
- package/lib/common-logic/utils.additional.test.js +0 -58
- package/lib/common-logic/utils.additional.test.js.map +0 -1
- package/lib/common-logic/utils.unit.test.d.ts +0 -2
- package/lib/common-logic/utils.unit.test.d.ts.map +0 -1
- package/lib/common-logic/utils.unit.test.js +0 -52
- package/lib/common-logic/utils.unit.test.js.map +0 -1
- package/lib/hw-signMessage.test.d.ts +0 -2
- package/lib/hw-signMessage.test.d.ts.map +0 -1
- package/lib/hw-signMessage.test.js +0 -80
- package/lib/hw-signMessage.test.js.map +0 -1
- package/lib/signer/getAddress.test.d.ts +0 -2
- package/lib/signer/getAddress.test.d.ts.map +0 -1
- package/lib/signer/getAddress.test.js +0 -133
- package/lib/signer/getAddress.test.js.map +0 -1
- package/lib-es/api/index.integ.test.d.ts +0 -2
- package/lib-es/api/index.integ.test.d.ts.map +0 -1
- package/lib-es/api/index.integ.test.js +0 -51
- package/lib-es/api/index.integ.test.js.map +0 -1
- package/lib-es/api/index.test.d.ts +0 -2
- package/lib-es/api/index.test.d.ts.map +0 -1
- package/lib-es/api/index.test.js +0 -269
- package/lib-es/api/index.test.js.map +0 -1
- package/lib-es/bridge/bridgeHelpers/accountShape.test.d.ts +0 -2
- package/lib-es/bridge/bridgeHelpers/accountShape.test.d.ts.map +0 -1
- package/lib-es/bridge/bridgeHelpers/accountShape.test.js +0 -89
- package/lib-es/bridge/bridgeHelpers/accountShape.test.js.map +0 -1
- package/lib-es/bridge/bridgeHelpers/txn.test.d.ts +0 -2
- package/lib-es/bridge/bridgeHelpers/txn.test.d.ts.map +0 -1
- package/lib-es/bridge/bridgeHelpers/txn.test.js +0 -278
- package/lib-es/bridge/bridgeHelpers/txn.test.js.map +0 -1
- package/lib-es/bridge/broadcast.test.d.ts +0 -2
- package/lib-es/bridge/broadcast.test.d.ts.map +0 -1
- package/lib-es/bridge/broadcast.test.js +0 -70
- package/lib-es/bridge/broadcast.test.js.map +0 -1
- package/lib-es/bridge/buildOptimisticOperation.test.d.ts +0 -2
- package/lib-es/bridge/buildOptimisticOperation.test.d.ts.map +0 -1
- package/lib-es/bridge/buildOptimisticOperation.test.js +0 -74
- package/lib-es/bridge/buildOptimisticOperation.test.js.map +0 -1
- package/lib-es/bridge/createTransaction.test.d.ts +0 -2
- package/lib-es/bridge/createTransaction.test.d.ts.map +0 -1
- package/lib-es/bridge/createTransaction.test.js +0 -36
- package/lib-es/bridge/createTransaction.test.js.map +0 -1
- package/lib-es/bridge/deviceTransactionConfig.test.d.ts +0 -2
- package/lib-es/bridge/deviceTransactionConfig.test.d.ts.map +0 -1
- package/lib-es/bridge/deviceTransactionConfig.test.js +0 -143
- package/lib-es/bridge/deviceTransactionConfig.test.js.map +0 -1
- package/lib-es/bridge/estimateMaxSpendable.test.d.ts +0 -2
- package/lib-es/bridge/estimateMaxSpendable.test.d.ts.map +0 -1
- package/lib-es/bridge/estimateMaxSpendable.test.js +0 -131
- package/lib-es/bridge/estimateMaxSpendable.test.js.map +0 -1
- package/lib-es/bridge/getTransactionStatus.test.d.ts +0 -2
- package/lib-es/bridge/getTransactionStatus.test.d.ts.map +0 -1
- package/lib-es/bridge/getTransactionStatus.test.js +0 -212
- package/lib-es/bridge/getTransactionStatus.test.js.map +0 -1
- package/lib-es/bridge/prepareTransaction.test.d.ts +0 -2
- package/lib-es/bridge/prepareTransaction.test.d.ts.map +0 -1
- package/lib-es/bridge/prepareTransaction.test.js +0 -157
- package/lib-es/bridge/prepareTransaction.test.js.map +0 -1
- package/lib-es/bridge/transaction.test.d.ts +0 -2
- package/lib-es/bridge/transaction.test.d.ts.map +0 -1
- package/lib-es/bridge/transaction.test.js +0 -154
- package/lib-es/bridge/transaction.test.js.map +0 -1
- package/lib-es/common-logic/utils.additional.test.d.ts +0 -2
- package/lib-es/common-logic/utils.additional.test.d.ts.map +0 -1
- package/lib-es/common-logic/utils.additional.test.js +0 -56
- package/lib-es/common-logic/utils.additional.test.js.map +0 -1
- package/lib-es/common-logic/utils.unit.test.d.ts +0 -2
- package/lib-es/common-logic/utils.unit.test.d.ts.map +0 -1
- package/lib-es/common-logic/utils.unit.test.js +0 -50
- package/lib-es/common-logic/utils.unit.test.js.map +0 -1
- package/lib-es/hw-signMessage.test.d.ts +0 -2
- package/lib-es/hw-signMessage.test.d.ts.map +0 -1
- package/lib-es/hw-signMessage.test.js +0 -78
- package/lib-es/hw-signMessage.test.js.map +0 -1
- package/lib-es/signer/getAddress.test.d.ts +0 -2
- package/lib-es/signer/getAddress.test.d.ts.map +0 -1
- package/lib-es/signer/getAddress.test.js +0 -105
- package/lib-es/signer/getAddress.test.js.map +0 -1
|
@@ -1,148 +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 logs_1 = require("@ledgerhq/logs");
|
|
7
|
-
const deviceTransactionConfig_1 = __importDefault(require("./deviceTransactionConfig"));
|
|
8
|
-
const fixtures_1 = require("../test/fixtures");
|
|
9
|
-
const consts_1 = require("../consts");
|
|
10
|
-
const common_logic_1 = require("../common-logic");
|
|
11
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
12
|
-
// Mock the log function to prevent console output during tests
|
|
13
|
-
jest.mock("@ledgerhq/logs", () => ({
|
|
14
|
-
log: jest.fn(),
|
|
15
|
-
}));
|
|
16
|
-
/**
|
|
17
|
-
* Tests for the getDeviceTransactionConfig function
|
|
18
|
-
* Validates the correct display fields are generated for Ledger devices
|
|
19
|
-
*/
|
|
20
|
-
describe("getDeviceTransactionConfig", () => {
|
|
21
|
-
// Common test objects
|
|
22
|
-
const MOCK_AMOUNT = new bignumber_js_1.default("1000000000"); // 1 CSPR
|
|
23
|
-
const TRANSFER_ID = "12345678";
|
|
24
|
-
/**
|
|
25
|
-
* Creates a mock transaction status for testing
|
|
26
|
-
* @returns A valid TransactionStatus object
|
|
27
|
-
*/
|
|
28
|
-
const createMockStatus = () => ({
|
|
29
|
-
errors: {},
|
|
30
|
-
warnings: {},
|
|
31
|
-
estimatedFees: new bignumber_js_1.default(0),
|
|
32
|
-
amount: new bignumber_js_1.default(0),
|
|
33
|
-
totalSpent: new bignumber_js_1.default(0),
|
|
34
|
-
});
|
|
35
|
-
/**
|
|
36
|
-
* Helper to get config fields
|
|
37
|
-
*/
|
|
38
|
-
const getConfigFields = (transaction, account = (0, fixtures_1.createMockAccount)()) => (0, deviceTransactionConfig_1.default)({
|
|
39
|
-
account,
|
|
40
|
-
parentAccount: null,
|
|
41
|
-
transaction,
|
|
42
|
-
status: createMockStatus(),
|
|
43
|
-
});
|
|
44
|
-
beforeEach(() => {
|
|
45
|
-
jest.clearAllMocks();
|
|
46
|
-
});
|
|
47
|
-
test("should display chain ID, transaction type and amount fields for standard transactions", () => {
|
|
48
|
-
// Create mock transaction
|
|
49
|
-
const mockTransaction = (0, fixtures_1.createMockTransaction)({
|
|
50
|
-
amount: MOCK_AMOUNT,
|
|
51
|
-
});
|
|
52
|
-
// Get display fields
|
|
53
|
-
const fields = getConfigFields(mockTransaction);
|
|
54
|
-
// Verify the results
|
|
55
|
-
expect(fields).toHaveLength(4);
|
|
56
|
-
// Check Type field
|
|
57
|
-
expect(fields[0]).toEqual({
|
|
58
|
-
type: "text",
|
|
59
|
-
label: "Type",
|
|
60
|
-
value: (0, common_logic_1.methodToString)(0), // 0 = "transfer"
|
|
61
|
-
});
|
|
62
|
-
// Check Chain ID field
|
|
63
|
-
expect(fields[1]).toEqual({
|
|
64
|
-
type: "text",
|
|
65
|
-
label: "Chain ID",
|
|
66
|
-
value: consts_1.CASPER_NETWORK,
|
|
67
|
-
});
|
|
68
|
-
// Check Fee field
|
|
69
|
-
expect(fields[2]).toEqual({
|
|
70
|
-
type: "casper.extendedAmount",
|
|
71
|
-
label: "Fee",
|
|
72
|
-
value: new bignumber_js_1.default(100000000),
|
|
73
|
-
});
|
|
74
|
-
// Check Amount field
|
|
75
|
-
expect(fields[3]).toEqual({
|
|
76
|
-
type: "casper.extendedAmount",
|
|
77
|
-
label: "Amount",
|
|
78
|
-
value: MOCK_AMOUNT,
|
|
79
|
-
});
|
|
80
|
-
// Verify logging
|
|
81
|
-
expect(logs_1.log).toHaveBeenCalledWith("debug", expect.stringContaining("Transaction config"));
|
|
82
|
-
});
|
|
83
|
-
test("should include transferId field when provided in transaction", () => {
|
|
84
|
-
// Create mock transaction with transferId
|
|
85
|
-
const mockTransaction = (0, fixtures_1.createMockTransaction)({
|
|
86
|
-
amount: MOCK_AMOUNT,
|
|
87
|
-
transferId: TRANSFER_ID,
|
|
88
|
-
});
|
|
89
|
-
// Get display fields
|
|
90
|
-
const fields = getConfigFields(mockTransaction);
|
|
91
|
-
// Verify the results
|
|
92
|
-
expect(fields).toHaveLength(5); // Chain ID, Type, Amount, Transfer ID fields
|
|
93
|
-
// Check all fields are present
|
|
94
|
-
const fieldLabels = fields.map(field => field.label);
|
|
95
|
-
expect(fieldLabels).toEqual(["Type", "Chain ID", "Fee", "Amount", "Transfer ID"]);
|
|
96
|
-
// Check Transfer ID field specifically
|
|
97
|
-
expect(fields[4]).toEqual({
|
|
98
|
-
type: "text",
|
|
99
|
-
label: "Transfer ID",
|
|
100
|
-
value: TRANSFER_ID,
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
test("should not include transferId field when undefined in transaction", () => {
|
|
104
|
-
// Create mock transaction with explicitly undefined transferId
|
|
105
|
-
const mockTransaction = (0, fixtures_1.createMockTransaction)({
|
|
106
|
-
amount: MOCK_AMOUNT,
|
|
107
|
-
transferId: undefined,
|
|
108
|
-
});
|
|
109
|
-
// Get display fields
|
|
110
|
-
const fields = getConfigFields(mockTransaction);
|
|
111
|
-
// Verify no transferId field is present
|
|
112
|
-
expect(fields).toHaveLength(4);
|
|
113
|
-
expect(fields.map(field => field.label)).not.toContain("Transfer ID");
|
|
114
|
-
});
|
|
115
|
-
test("should handle zero amount transactions correctly", () => {
|
|
116
|
-
// Create mock transaction with zero amount
|
|
117
|
-
const mockTransaction = (0, fixtures_1.createMockTransaction)({
|
|
118
|
-
amount: new bignumber_js_1.default(0),
|
|
119
|
-
});
|
|
120
|
-
// Get display fields
|
|
121
|
-
const fields = getConfigFields(mockTransaction);
|
|
122
|
-
// Verify amount field has zero value
|
|
123
|
-
const amountField = fields.find(field => field.label === "Amount");
|
|
124
|
-
expect(amountField).toBeDefined();
|
|
125
|
-
expect(amountField).toEqual({
|
|
126
|
-
type: "casper.extendedAmount",
|
|
127
|
-
label: "Amount",
|
|
128
|
-
value: new bignumber_js_1.default(0),
|
|
129
|
-
});
|
|
130
|
-
});
|
|
131
|
-
test("should maintain consistent order of fields regardless of transaction properties", () => {
|
|
132
|
-
// Create two transactions - one with transferId, one without
|
|
133
|
-
const txWithTransferId = (0, fixtures_1.createMockTransaction)({
|
|
134
|
-
amount: MOCK_AMOUNT,
|
|
135
|
-
transferId: TRANSFER_ID,
|
|
136
|
-
});
|
|
137
|
-
const txWithoutTransferId = (0, fixtures_1.createMockTransaction)({
|
|
138
|
-
amount: MOCK_AMOUNT,
|
|
139
|
-
});
|
|
140
|
-
const fieldsWithId = getConfigFields(txWithTransferId);
|
|
141
|
-
const fieldsWithoutId = getConfigFields(txWithoutTransferId);
|
|
142
|
-
// Verify field order consistency for common fields
|
|
143
|
-
for (let i = 0; i < fieldsWithoutId.length; i++) {
|
|
144
|
-
expect(fieldsWithId[i].label).toEqual(fieldsWithoutId[i].label);
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
});
|
|
148
|
-
//# sourceMappingURL=deviceTransactionConfig.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deviceTransactionConfig.test.js","sourceRoot":"","sources":["../../src/bridge/deviceTransactionConfig.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"estimateMaxSpendable.test.d.ts","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const bignumber_js_1 = require("bignumber.js");
|
|
4
|
-
const estimateMaxSpendable_1 = require("./estimateMaxSpendable");
|
|
5
|
-
const fee_1 = require("./bridgeHelpers/fee");
|
|
6
|
-
const fixtures_1 = require("../test/fixtures");
|
|
7
|
-
// Mock the fee helper
|
|
8
|
-
jest.mock("./bridgeHelpers/fee", () => ({
|
|
9
|
-
getEstimatedFees: jest.fn().mockReturnValue(new bignumber_js_1.BigNumber(1000000)),
|
|
10
|
-
}));
|
|
11
|
-
describe("estimateMaxSpendable", () => {
|
|
12
|
-
const mockAccount = {
|
|
13
|
-
id: "casper:0:testAccount",
|
|
14
|
-
type: "Account",
|
|
15
|
-
spendableBalance: new bignumber_js_1.BigNumber(10000000),
|
|
16
|
-
};
|
|
17
|
-
afterEach(() => {
|
|
18
|
-
jest.clearAllMocks();
|
|
19
|
-
});
|
|
20
|
-
test("should return zero when balance is zero", async () => {
|
|
21
|
-
const zeroBalanceAccount = {
|
|
22
|
-
...mockAccount,
|
|
23
|
-
spendableBalance: new bignumber_js_1.BigNumber(0),
|
|
24
|
-
};
|
|
25
|
-
const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
|
|
26
|
-
account: zeroBalanceAccount,
|
|
27
|
-
parentAccount: undefined,
|
|
28
|
-
});
|
|
29
|
-
expect(result.toNumber()).toBe(0);
|
|
30
|
-
expect(fee_1.getEstimatedFees).not.toHaveBeenCalled();
|
|
31
|
-
});
|
|
32
|
-
test("should return balance minus fees when no transaction is provided", async () => {
|
|
33
|
-
const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
|
|
34
|
-
account: mockAccount,
|
|
35
|
-
parentAccount: undefined,
|
|
36
|
-
});
|
|
37
|
-
const expectedFees = new bignumber_js_1.BigNumber(1000000);
|
|
38
|
-
const expectedMaxSpendable = mockAccount.spendableBalance.minus(expectedFees);
|
|
39
|
-
expect(result.toString()).toBe(expectedMaxSpendable.toString());
|
|
40
|
-
expect(fee_1.getEstimatedFees).toHaveBeenCalled();
|
|
41
|
-
});
|
|
42
|
-
test("should use transaction fees when transaction is provided", async () => {
|
|
43
|
-
const transactionFees = new bignumber_js_1.BigNumber(500000);
|
|
44
|
-
const mockTransaction = {
|
|
45
|
-
fees: transactionFees,
|
|
46
|
-
};
|
|
47
|
-
const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
|
|
48
|
-
account: mockAccount,
|
|
49
|
-
parentAccount: undefined,
|
|
50
|
-
transaction: mockTransaction,
|
|
51
|
-
});
|
|
52
|
-
const expectedMaxSpendable = mockAccount.spendableBalance.minus(transactionFees);
|
|
53
|
-
expect(result.toString()).toBe(expectedMaxSpendable.toString());
|
|
54
|
-
expect(fee_1.getEstimatedFees).not.toHaveBeenCalled();
|
|
55
|
-
});
|
|
56
|
-
test("should return zero when balance is less than fees", async () => {
|
|
57
|
-
const lowBalanceAccount = {
|
|
58
|
-
...mockAccount,
|
|
59
|
-
spendableBalance: new bignumber_js_1.BigNumber(500000), // Less than default fee of 1000000
|
|
60
|
-
};
|
|
61
|
-
const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
|
|
62
|
-
account: lowBalanceAccount,
|
|
63
|
-
parentAccount: undefined,
|
|
64
|
-
});
|
|
65
|
-
expect(result.toString()).toBe("0");
|
|
66
|
-
});
|
|
67
|
-
test("should use main account when parentAccount is provided", async () => {
|
|
68
|
-
const parentAccount = {
|
|
69
|
-
id: "casper:parent",
|
|
70
|
-
spendableBalance: new bignumber_js_1.BigNumber(0),
|
|
71
|
-
};
|
|
72
|
-
const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
|
|
73
|
-
account: mockAccount,
|
|
74
|
-
parentAccount: parentAccount,
|
|
75
|
-
});
|
|
76
|
-
const expectedFees = new bignumber_js_1.BigNumber(1000000);
|
|
77
|
-
const expectedMaxSpendable = mockAccount.spendableBalance.minus(expectedFees);
|
|
78
|
-
expect(result.toString()).toBe(expectedMaxSpendable.toString());
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
// Add test cases from fixtures
|
|
82
|
-
describe("estimateMaxSpendable with standard test cases", () => {
|
|
83
|
-
const standardFees = new bignumber_js_1.BigNumber("1000000");
|
|
84
|
-
beforeEach(() => {
|
|
85
|
-
fee_1.getEstimatedFees.mockReturnValue(standardFees);
|
|
86
|
-
});
|
|
87
|
-
test.each([
|
|
88
|
-
{
|
|
89
|
-
name: "Standard account",
|
|
90
|
-
account: (0, fixtures_1.createMockAccount)(),
|
|
91
|
-
expectedResult: new bignumber_js_1.BigNumber("10000000000").minus(standardFees),
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
name: "Empty account",
|
|
95
|
-
account: (0, fixtures_1.createMockAccount)({
|
|
96
|
-
balance: new bignumber_js_1.BigNumber("0"),
|
|
97
|
-
spendableBalance: new bignumber_js_1.BigNumber("0"),
|
|
98
|
-
}),
|
|
99
|
-
expectedResult: new bignumber_js_1.BigNumber("0"),
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
name: "Account with balance less than fees",
|
|
103
|
-
account: (0, fixtures_1.createMockAccount)({
|
|
104
|
-
balance: standardFees.div(2),
|
|
105
|
-
spendableBalance: standardFees.div(2),
|
|
106
|
-
}),
|
|
107
|
-
expectedResult: new bignumber_js_1.BigNumber("0"),
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
name: "Account with balance equal to fees",
|
|
111
|
-
account: (0, fixtures_1.createMockAccount)({
|
|
112
|
-
balance: standardFees,
|
|
113
|
-
spendableBalance: standardFees,
|
|
114
|
-
}),
|
|
115
|
-
expectedResult: new bignumber_js_1.BigNumber("0"),
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
name: "Account with high balance",
|
|
119
|
-
account: (0, fixtures_1.createMockAccount)({
|
|
120
|
-
balance: new bignumber_js_1.BigNumber("100000000000000"),
|
|
121
|
-
spendableBalance: new bignumber_js_1.BigNumber("100000000000000"),
|
|
122
|
-
}),
|
|
123
|
-
expectedResult: new bignumber_js_1.BigNumber("100000000000000").minus(standardFees),
|
|
124
|
-
},
|
|
125
|
-
])("should handle $name", async ({ account, expectedResult }) => {
|
|
126
|
-
const result = await (0, estimateMaxSpendable_1.estimateMaxSpendable)({
|
|
127
|
-
account: account,
|
|
128
|
-
parentAccount: undefined,
|
|
129
|
-
});
|
|
130
|
-
expect(result.toString()).toBe(expectedResult.toString());
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
//# sourceMappingURL=estimateMaxSpendable.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"estimateMaxSpendable.test.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getTransactionStatus.test.d.ts","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const bignumber_js_1 = require("bignumber.js");
|
|
4
|
-
const getTransactionStatus_1 = require("./getTransactionStatus");
|
|
5
|
-
const consts_1 = require("../consts");
|
|
6
|
-
const errors_1 = require("@ledgerhq/errors");
|
|
7
|
-
const errors_2 = require("../errors");
|
|
8
|
-
const fixtures_1 = require("../test/fixtures");
|
|
9
|
-
describe("getTransactionStatus", () => {
|
|
10
|
-
// Create fixtures
|
|
11
|
-
const mockAccount = (0, fixtures_1.createMockAccount)();
|
|
12
|
-
const validTransaction = (0, fixtures_1.createMockTransaction)();
|
|
13
|
-
beforeEach(() => {
|
|
14
|
-
jest.clearAllMocks();
|
|
15
|
-
});
|
|
16
|
-
test("should validate a valid transaction", async () => {
|
|
17
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, validTransaction);
|
|
18
|
-
expect(status.errors).toEqual({});
|
|
19
|
-
expect(status.warnings).toEqual({});
|
|
20
|
-
expect(status.estimatedFees).toEqual(validTransaction.fees);
|
|
21
|
-
expect(status.amount).toEqual(validTransaction.amount);
|
|
22
|
-
expect(status.totalSpent).toEqual(validTransaction.amount.plus(validTransaction.fees));
|
|
23
|
-
});
|
|
24
|
-
test("should return error when recipient is missing", async () => {
|
|
25
|
-
const txWithoutRecipient = {
|
|
26
|
-
...validTransaction,
|
|
27
|
-
recipient: "",
|
|
28
|
-
};
|
|
29
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, txWithoutRecipient);
|
|
30
|
-
expect(status.errors.recipient).toBeInstanceOf(errors_1.RecipientRequired);
|
|
31
|
-
});
|
|
32
|
-
test("should return error when recipient is invalid", async () => {
|
|
33
|
-
const txWithInvalidRecipient = {
|
|
34
|
-
...validTransaction,
|
|
35
|
-
recipient: fixtures_1.TEST_ADDRESSES.INVALID,
|
|
36
|
-
};
|
|
37
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, txWithInvalidRecipient);
|
|
38
|
-
expect(status.errors.recipient).toBeInstanceOf(errors_1.InvalidAddress);
|
|
39
|
-
});
|
|
40
|
-
test("should return error when recipient is same as sender", async () => {
|
|
41
|
-
const txToSelf = {
|
|
42
|
-
...validTransaction,
|
|
43
|
-
recipient: mockAccount.freshAddress,
|
|
44
|
-
};
|
|
45
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, txToSelf);
|
|
46
|
-
expect(status.errors.recipient).toBeInstanceOf(errors_1.InvalidAddressBecauseDestinationIsAlsoSource);
|
|
47
|
-
});
|
|
48
|
-
test("should return error when transfer ID is invalid", async () => {
|
|
49
|
-
const txWithInvalidTransferId = {
|
|
50
|
-
...validTransaction,
|
|
51
|
-
transferId: "invalid-id",
|
|
52
|
-
};
|
|
53
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, txWithInvalidTransferId);
|
|
54
|
-
expect(status.errors.sender).toBeInstanceOf(errors_2.CasperInvalidTransferId);
|
|
55
|
-
});
|
|
56
|
-
test("should handle useAllAmount correctly", async () => {
|
|
57
|
-
const useAllAmountTx = {
|
|
58
|
-
...validTransaction,
|
|
59
|
-
useAllAmount: true,
|
|
60
|
-
};
|
|
61
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, useAllAmountTx);
|
|
62
|
-
expect(status.amount).toEqual(mockAccount.spendableBalance.minus(useAllAmountTx.fees));
|
|
63
|
-
expect(status.totalSpent).toEqual(mockAccount.spendableBalance);
|
|
64
|
-
expect(status.errors).toEqual({});
|
|
65
|
-
});
|
|
66
|
-
test("should return error when useAllAmount but not enough balance for fees", async () => {
|
|
67
|
-
const lowBalanceAccount = (0, fixtures_1.createMockAccount)({
|
|
68
|
-
spendableBalance: new bignumber_js_1.BigNumber(500000), // Less than the fee
|
|
69
|
-
});
|
|
70
|
-
const useAllAmountTx = {
|
|
71
|
-
...validTransaction,
|
|
72
|
-
useAllAmount: true,
|
|
73
|
-
fees: new bignumber_js_1.BigNumber(1000000),
|
|
74
|
-
};
|
|
75
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(lowBalanceAccount, useAllAmountTx);
|
|
76
|
-
expect(status.errors.amount).toBeInstanceOf(errors_1.NotEnoughBalance);
|
|
77
|
-
});
|
|
78
|
-
test("should return error when amount is zero", async () => {
|
|
79
|
-
const zeroAmountTx = {
|
|
80
|
-
...validTransaction,
|
|
81
|
-
amount: new bignumber_js_1.BigNumber(0),
|
|
82
|
-
};
|
|
83
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, zeroAmountTx);
|
|
84
|
-
expect(status.errors.amount).toBeInstanceOf(errors_1.AmountRequired);
|
|
85
|
-
});
|
|
86
|
-
test("should return error when amount is below minimum", async () => {
|
|
87
|
-
const lowAmountTx = {
|
|
88
|
-
...validTransaction,
|
|
89
|
-
amount: new bignumber_js_1.BigNumber(consts_1.CASPER_MINIMUM_VALID_AMOUNT_MOTES).minus(1),
|
|
90
|
-
};
|
|
91
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, lowAmountTx);
|
|
92
|
-
expect(status.errors.amount).toBe(consts_1.InvalidMinimumAmountError);
|
|
93
|
-
});
|
|
94
|
-
test("should return error when not enough balance for transaction", async () => {
|
|
95
|
-
const lowBalanceAccount = (0, fixtures_1.createMockAccount)({
|
|
96
|
-
spendableBalance: new bignumber_js_1.BigNumber(5000000),
|
|
97
|
-
});
|
|
98
|
-
const expensiveTx = {
|
|
99
|
-
...validTransaction,
|
|
100
|
-
amount: new bignumber_js_1.BigNumber(5000000),
|
|
101
|
-
fees: new bignumber_js_1.BigNumber(1000000),
|
|
102
|
-
};
|
|
103
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(lowBalanceAccount, expensiveTx);
|
|
104
|
-
expect(status.errors.amount).toBeInstanceOf(errors_1.NotEnoughBalance);
|
|
105
|
-
});
|
|
106
|
-
test("should return warning when spending more than 90% of balance", async () => {
|
|
107
|
-
const expensiveTx = {
|
|
108
|
-
...validTransaction,
|
|
109
|
-
amount: mockAccount.spendableBalance.multipliedBy(0.95), // 95% of balance
|
|
110
|
-
};
|
|
111
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(mockAccount, expensiveTx);
|
|
112
|
-
expect(status.warnings.amount).toBe(consts_1.MayBlockAccountError);
|
|
113
|
-
});
|
|
114
|
-
// Test using the predefined test cases
|
|
115
|
-
describe("transaction status test cases", () => {
|
|
116
|
-
const testCases = [
|
|
117
|
-
{
|
|
118
|
-
name: "Valid transaction",
|
|
119
|
-
account: (0, fixtures_1.createMockAccount)(),
|
|
120
|
-
transaction: (0, fixtures_1.createMockTransaction)(),
|
|
121
|
-
expectedStatus: { errors: {}, warnings: {}, estimatedFees: (0, fixtures_1.createMockTransaction)().fees },
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
name: "Invalid recipient",
|
|
125
|
-
account: (0, fixtures_1.createMockAccount)(),
|
|
126
|
-
transaction: (0, fixtures_1.createMockTransaction)({ recipient: fixtures_1.TEST_ADDRESSES.INVALID }),
|
|
127
|
-
expectedStatus: {
|
|
128
|
-
errors: { recipient: new errors_1.InvalidAddress() },
|
|
129
|
-
warnings: {},
|
|
130
|
-
estimatedFees: (0, fixtures_1.createMockTransaction)().fees,
|
|
131
|
-
},
|
|
132
|
-
},
|
|
133
|
-
{
|
|
134
|
-
name: "Zero amount",
|
|
135
|
-
account: (0, fixtures_1.createMockAccount)(),
|
|
136
|
-
transaction: (0, fixtures_1.createMockTransaction)({ amount: new bignumber_js_1.BigNumber("0") }),
|
|
137
|
-
expectedStatus: {
|
|
138
|
-
errors: { amount: new errors_1.AmountRequired() },
|
|
139
|
-
warnings: {},
|
|
140
|
-
},
|
|
141
|
-
},
|
|
142
|
-
{
|
|
143
|
-
name: "High amount (warning)",
|
|
144
|
-
account: (0, fixtures_1.createMockAccount)(),
|
|
145
|
-
transaction: (0, fixtures_1.createMockTransaction)({
|
|
146
|
-
amount: new bignumber_js_1.BigNumber((0, fixtures_1.createMockAccount)().balance.minus((0, fixtures_1.createMockTransaction)().fees).toString()),
|
|
147
|
-
}),
|
|
148
|
-
expectedStatus: {
|
|
149
|
-
errors: {},
|
|
150
|
-
warnings: { amount: consts_1.MayBlockAccountError },
|
|
151
|
-
},
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
name: "Insufficient funds",
|
|
155
|
-
account: (0, fixtures_1.createMockAccount)({
|
|
156
|
-
balance: new bignumber_js_1.BigNumber("2000000"), // 0.002 CSPR
|
|
157
|
-
spendableBalance: new bignumber_js_1.BigNumber("2000000"),
|
|
158
|
-
}),
|
|
159
|
-
transaction: (0, fixtures_1.createMockTransaction)({
|
|
160
|
-
amount: new bignumber_js_1.BigNumber("2000000"),
|
|
161
|
-
}),
|
|
162
|
-
expectedStatus: {
|
|
163
|
-
errors: { amount: new errors_1.NotEnoughBalance() },
|
|
164
|
-
warnings: { amount: consts_1.MayBlockAccountError },
|
|
165
|
-
},
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
name: "Empty account",
|
|
169
|
-
account: (0, fixtures_1.createMockAccount)({
|
|
170
|
-
balance: new bignumber_js_1.BigNumber("0"),
|
|
171
|
-
spendableBalance: new bignumber_js_1.BigNumber("0"),
|
|
172
|
-
}),
|
|
173
|
-
transaction: (0, fixtures_1.createMockTransaction)(),
|
|
174
|
-
expectedStatus: {
|
|
175
|
-
errors: { amount: new errors_1.NotEnoughBalance() },
|
|
176
|
-
warnings: { amount: consts_1.MayBlockAccountError },
|
|
177
|
-
},
|
|
178
|
-
},
|
|
179
|
-
];
|
|
180
|
-
testCases.forEach(testCase => {
|
|
181
|
-
test(`should handle ${testCase.name}`, async () => {
|
|
182
|
-
const status = await (0, getTransactionStatus_1.getTransactionStatus)(testCase.account, testCase.transaction);
|
|
183
|
-
// Check if errors match expected errors
|
|
184
|
-
if (Object.keys(testCase.expectedStatus.errors).length) {
|
|
185
|
-
// Simplified error checking
|
|
186
|
-
expect(Object.keys(status.errors).length).toBeGreaterThan(0);
|
|
187
|
-
// Check only specific known error keys
|
|
188
|
-
if ("recipient" in testCase.expectedStatus.errors) {
|
|
189
|
-
expect(status.errors.recipient).toBeTruthy();
|
|
190
|
-
}
|
|
191
|
-
if ("amount" in testCase.expectedStatus.errors) {
|
|
192
|
-
expect(status.errors.amount).toBeTruthy();
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
else {
|
|
196
|
-
expect(Object.keys(status.errors).length).toBe(0);
|
|
197
|
-
}
|
|
198
|
-
// Check if warnings match expected warnings
|
|
199
|
-
if (Object.keys(testCase.expectedStatus.warnings).length) {
|
|
200
|
-
// Simplified warning checking
|
|
201
|
-
expect(Object.keys(status.warnings).length).toBeGreaterThan(0);
|
|
202
|
-
// Check only specific known warning keys
|
|
203
|
-
if ("amount" in testCase.expectedStatus.warnings) {
|
|
204
|
-
expect(status.warnings.amount).toBeTruthy();
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
else {
|
|
208
|
-
expect(Object.keys(status.warnings).length).toBe(0);
|
|
209
|
-
}
|
|
210
|
-
});
|
|
211
|
-
});
|
|
212
|
-
});
|
|
213
|
-
});
|
|
214
|
-
//# 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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prepareTransaction.test.d.ts","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.test.ts"],"names":[],"mappings":""}
|