Skip to content

Commit

Permalink
consolidate function call
Browse files Browse the repository at this point in the history
  • Loading branch information
lumtis committed Nov 22, 2024
1 parent c511620 commit 5f13764
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 44 deletions.
45 changes: 3 additions & 42 deletions e2e/e2etests/test_erc20_deposit_refund.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,10 @@ package e2etests

import (
"errors"
"fmt"
"math/big"
"time"

"github.com/ethereum/go-ethereum/accounts/abi/bind"
ethcommon "github.com/ethereum/go-ethereum/common"
"github.com/stretchr/testify/require"
"math/big"

"github.com/zeta-chain/node/e2e/runner"
"github.com/zeta-chain/node/e2e/utils"
Expand Down Expand Up @@ -64,7 +61,8 @@ func TestERC20DepositAndCallRefund(r *runner.E2ERunner, _ []string) {
r.Logger.Info("Sending a deposit that should revert with a liquidity pool")

r.Logger.Info("Creating the liquidity pool USTD/ZETA")
err = createZetaERC20LiquidityPool(r)
fifty := big.NewInt(0).Mul(big.NewInt(1e18), big.NewInt(50))
r.AddLiquidityERC20(fifty, fifty)
require.NoError(r, err)

r.Logger.Info("Liquidity pool created")
Expand Down Expand Up @@ -120,43 +118,6 @@ func TestERC20DepositAndCallRefund(r *runner.E2ERunner, _ []string) {
r.Logger.Info("\tbalance after refund: %s", erc20BalanceAfterRefund.String())
}

func createZetaERC20LiquidityPool(r *runner.E2ERunner) error {
amount := big.NewInt(1e10)
txHash := r.DepositERC20WithAmountAndMessage(r.EVMAddress(), amount, []byte{})
utils.WaitCctxMinedByInboundHash(r.Ctx, txHash.Hex(), r.CctxClient, r.Logger, r.CctxTimeout)

tx, err := r.ERC20ZRC20.Approve(r.ZEVMAuth, r.UniswapV2RouterAddr, big.NewInt(1e10))
if err != nil {
return err
}
receipt := utils.MustWaitForTxReceipt(r.Ctx, r.ZEVMClient, tx, r.Logger, r.ReceiptTimeout)
if receipt.Status == 0 {
return errors.New("approve failed")
}

previousValue := r.ZEVMAuth.Value
r.ZEVMAuth.Value = big.NewInt(1e10)
tx, err = r.UniswapV2Router.AddLiquidityETH(
r.ZEVMAuth,
r.ERC20ZRC20Addr,
amount,
big.NewInt(0),
big.NewInt(0),
r.EVMAddress(),
big.NewInt(time.Now().Add(10*time.Minute).Unix()),
)
r.ZEVMAuth.Value = previousValue
if err != nil {
return err
}
receipt = utils.MustWaitForTxReceipt(r.Ctx, r.ZEVMClient, tx, r.Logger, r.ReceiptTimeout)
if receipt.Status == 0 {
return fmt.Errorf("add liquidity failed")
}

return nil
}

func sendInvalidERC20Deposit(r *runner.E2ERunner, amount *big.Int) (string, error) {
tx, err := r.ERC20.Approve(r.EVMAuth, r.ERC20CustodyAddr, amount)
if err != nil {
Expand Down
8 changes: 6 additions & 2 deletions e2e/runner/liquidity.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ func (r *E2ERunner) AddLiquidityETH(amountZETA, amountETH *big.Int) {
require.NoError(r, err)

receipt := utils.MustWaitForTxReceipt(r.Ctx, r.ZEVMClient, tx, r.Logger, r.ReceiptTimeout)
require.EqualValues(r, types.ReceiptStatusSuccessful, receipt.Status, "add liquidity failed")
if receipt.Status == types.ReceiptStatusFailed {
r.Logger.Error("Add liquidity failed: %s", receipt.Logs)
}

// get the pair address
pairAddress, err := r.UniswapV2Factory.GetPair(&bind.CallOpts{}, r.WZetaAddr, r.ETHZRC20Addr)
Expand Down Expand Up @@ -72,7 +74,9 @@ func (r *E2ERunner) AddLiquidityERC20(amountZETA, amountERC20 *big.Int) {
require.NoError(r, err)

receipt := utils.MustWaitForTxReceipt(r.Ctx, r.ZEVMClient, tx, r.Logger, r.ReceiptTimeout)
require.EqualValues(r, types.ReceiptStatusSuccessful, receipt.Status, "add liquidity failed")
if receipt.Status == types.ReceiptStatusFailed {
r.Logger.Error("Add liquidity failed: %s", receipt.Logs)
}

// get the pair address
pairAddress, err := r.UniswapV2Factory.GetPair(&bind.CallOpts{}, r.WZetaAddr, r.ERC20ZRC20Addr)
Expand Down

0 comments on commit 5f13764

Please sign in to comment.