@getclave/lifi-sdk
Version:
LI.FI Any-to-Any Cross-Chain-Swap SDK
66 lines (65 loc) • 2.49 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const viem_1 = require("viem");
const accounts_1 = require("viem/accounts");
const actions_1 = require("viem/actions");
const chains_1 = require("viem/chains");
const vitest_1 = require("vitest");
const setup_1 = require("../../tests/setup");
const setAllowance_1 = require("./setAllowance");
const utils_1 = require("./utils");
const defaultSpenderAddress = '0x9b11bc9FAc17c058CAB6286b0c785bE6a65492EF';
const testToken = {
name: 'USDT',
symbol: 'USDT',
decimals: 6,
address: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f',
chainId: 137,
priceUSD: '',
};
const defaultAllowance = 10000000n; // 10$
const timeout = 3600000;
const MNEMONIC = '';
vitest_1.describe.skipIf(!MNEMONIC)('Approval integration tests', () => {
if (!MNEMONIC) {
return;
}
const account = (0, accounts_1.mnemonicToAccount)(MNEMONIC);
const client = (0, viem_1.createClient)({
account,
chain: chains_1.polygon,
transport: (0, viem_1.http)(),
});
(0, vitest_1.beforeAll)(setup_1.setupTestEnvironment);
(0, vitest_1.it)('should revoke allowance for ERC20 on POL', async () => {
const revokeTxHash = await (0, setAllowance_1.revokeTokenApproval)({
walletClient: client,
token: testToken,
spenderAddress: defaultSpenderAddress,
});
if (revokeTxHash) {
const transactionReceipt = await (0, actions_1.waitForTransactionReceipt)(client, {
hash: revokeTxHash,
retryCount: utils_1.retryCount,
retryDelay: utils_1.retryDelay,
});
(0, vitest_1.expect)(transactionReceipt.status).toBe('success');
}
}, { timeout });
(0, vitest_1.it)('should set allowance ERC20 on POL', async () => {
const approvalTxHash = await (0, setAllowance_1.setTokenAllowance)({
walletClient: client,
token: testToken,
spenderAddress: defaultSpenderAddress,
amount: defaultAllowance,
});
if (approvalTxHash) {
const transactionReceipt = await (0, actions_1.waitForTransactionReceipt)(client, {
hash: approvalTxHash,
retryCount: utils_1.retryCount,
retryDelay: utils_1.retryDelay,
});
(0, vitest_1.expect)(transactionReceipt.status).toBe('success');
}
}, { timeout });
});