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