From 7a38a5029c285dae8e83aca17411ae4f74508254 Mon Sep 17 00:00:00 2001 From: Denis Fadeev Date: Wed, 12 Feb 2025 12:40:42 +0300 Subject: [PATCH] fix: call evmExecute with gas tokens --- packages/localnet/src/evmExecute.ts | 9 +++++++-- packages/localnet/src/zetachainCall.ts | 1 + packages/localnet/src/zetachainWithdrawAndCall.ts | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/localnet/src/evmExecute.ts b/packages/localnet/src/evmExecute.ts index 3cd313e..25515b7 100644 --- a/packages/localnet/src/evmExecute.ts +++ b/packages/localnet/src/evmExecute.ts @@ -1,4 +1,4 @@ -import { ethers } from "ethers"; +import { BigNumberish, ethers } from "ethers"; import { deployOpts } from "./deployOpts"; import { log } from "./log"; @@ -13,6 +13,7 @@ export const evmExecute = async ({ receiver, message, callOptions, + amount, }: { callOptions: any; evmContracts: any; @@ -23,6 +24,7 @@ export const evmExecute = async ({ sender: any; tss: any; zrc20: any; + amount: BigNumberish; }) => { const chainID = foreignCoins.find( (coin: any) => coin.zrc20_contract_address === zrc20 @@ -46,7 +48,10 @@ export const evmExecute = async ({ } const executeTx = await evmContracts[chainID].gatewayEVM .connect(tss) - .execute(messageContext, receiver, message, deployOpts); + .execute(messageContext, receiver, message, { + value: amount, + ...deployOpts, + }); const logs = await provider.getLogs({ address: receiver, diff --git a/packages/localnet/src/zetachainCall.ts b/packages/localnet/src/zetachainCall.ts index 9f898c7..b2ba882 100644 --- a/packages/localnet/src/zetachainCall.ts +++ b/packages/localnet/src/zetachainCall.ts @@ -41,6 +41,7 @@ export const zetachainCall = async ({ sender, tss, zrc20, + amount: 0, }); } catch (err: any) { if (exitOnError) { diff --git a/packages/localnet/src/zetachainWithdrawAndCall.ts b/packages/localnet/src/zetachainWithdrawAndCall.ts index 4bf7ec3..dfee02e 100644 --- a/packages/localnet/src/zetachainWithdrawAndCall.ts +++ b/packages/localnet/src/zetachainWithdrawAndCall.ts @@ -62,7 +62,6 @@ export const zetachainWithdrawAndCall = async ({ ); } } - if (isGasToken) { await evmExecute({ callOptions, @@ -74,6 +73,7 @@ export const zetachainWithdrawAndCall = async ({ sender, tss, zrc20, + amount, }); } else { await evmCustodyWithdrawAndCall({