github.com/0xPolygon/supernets2-node@v0.0.0-20230711153321-2fe574524eaa/test/benchmarks/sequencer/scripts/eth-transfers/main.go (about)

     1  package main
     2  
     3  import (
     4  	"time"
     5  
     6  	"github.com/0xPolygon/supernets2-node/pool"
     7  	"github.com/0xPolygon/supernets2-node/test/benchmarks/sequencer/common/params"
     8  	"github.com/0xPolygon/supernets2-node/test/benchmarks/sequencer/common/transactions"
     9  	ethtransfers "github.com/0xPolygon/supernets2-node/test/benchmarks/sequencer/eth-transfers"
    10  	"github.com/0xPolygon/supernets2-node/test/benchmarks/sequencer/scripts/common/environment"
    11  	"github.com/0xPolygon/supernets2-node/test/benchmarks/sequencer/scripts/common/results"
    12  )
    13  
    14  func main() {
    15  	var (
    16  		err error
    17  	)
    18  	ctx, pl, state, l2Client, auth := environment.Init()
    19  	initialCount, err := pl.CountTransactionsByStatus(params.Ctx, pool.TxStatusSelected)
    20  	if err != nil {
    21  		panic(err)
    22  	}
    23  
    24  	start := time.Now()
    25  	// Send Txs
    26  	err = transactions.SendAndWait(
    27  		ctx,
    28  		auth,
    29  		l2Client,
    30  		pl.CountTransactionsByStatus,
    31  		params.NumberOfTxs,
    32  		nil,
    33  		ethtransfers.TxSender,
    34  	)
    35  	if err != nil {
    36  		panic(err)
    37  	}
    38  
    39  	// Wait for Txs to be selected
    40  	err = transactions.WaitStatusSelected(pl.CountTransactionsByStatus, initialCount, params.NumberOfTxs)
    41  	if err != nil {
    42  		panic(err)
    43  	}
    44  
    45  	lastL2BlockTimestamp, err := state.GetLastL2BlockCreatedAt(params.Ctx, nil)
    46  	if err != nil {
    47  		panic(err)
    48  	}
    49  	elapsed := lastL2BlockTimestamp.Sub(start)
    50  	results.Print(elapsed)
    51  }