Skip to content

Commit

Permalink
chore: Basic usage of signAndSend in endpoint deployment utilities
Browse files Browse the repository at this point in the history
  • Loading branch information
janjakubnanista committed Dec 13, 2023
1 parent 03aea58 commit f4bec89
Showing 1 changed file with 6 additions and 17 deletions.
23 changes: 6 additions & 17 deletions packages/ua-utils-evm-hardhat-test/test/__utils__/endpoint.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import {
Uln302UlnConfig,
} from '@layerzerolabs/protocol-utils'
import { createEndpointFactory, createUln302Factory } from '@layerzerolabs/protocol-utils-evm'
import { formatOmniPoint } from '@layerzerolabs/utils'
import { createSignAndSend } from '@layerzerolabs/utils'

export const ethEndpoint = { eid: EndpointId.ETHEREUM_MAINNET, contractName: 'EndpointV2' }
export const ethReceiveUln = { eid: EndpointId.ETHEREUM_MAINNET, contractName: 'ReceiveUln302' }
Expand Down Expand Up @@ -92,7 +92,7 @@ export const setupDefaultEndpoint = async (): Promise<void> => {
// This is the tooling we are going to need
const logger = createLogger()
const contractFactory = createConnectedContractFactory()
const signerFactory = createSignerFactory()
const signAndSend = createSignAndSend(createSignerFactory())
const ulnSdkFactory = createUln302Factory(contractFactory)
const endpointSdkFactory = createEndpointFactory(contractFactory, ulnSdkFactory)

Expand Down Expand Up @@ -195,20 +195,9 @@ export const setupDefaultEndpoint = async (): Promise<void> => {

const transactions = [...sendUlnTransactions, ...receiveUlnTransactions, ...endpointTransactions]

logger.debug(`Executing ${transactions.length} transactions`)

for (const transaction of transactions) {
const signer = await signerFactory(transaction.point.eid)
const description = transaction.description ?? '[no description]'

logger.debug(`${formatOmniPoint(transaction.point)}: ${description}`)

const response = await signer.signAndSend(transaction)
logger.debug(`${formatOmniPoint(transaction.point)}: ${description}: ${response.transactionHash}`)

const receipt = await response.wait()
logger.debug(`${formatOmniPoint(transaction.point)}: ${description}: ${receipt.transactionHash}`)
// eslint-disable-next-line @typescript-eslint/no-unused-vars
const [successful, errors] = await signAndSend(transactions)
if (errors.length !== 0) {
throw new Error(`Failed to deploy endpoint: ${errors}`)
}

logger.debug(`Done configuring endpoint`)
}

0 comments on commit f4bec89

Please sign in to comment.