1 unstable release

new 0.1.0 Sep 30, 2024

#550 in Magic Beans

Download history 158/week @ 2024-09-26

158 downloads per month
Used in 10 crates

Custom license

490KB
437 lines

Eigen Testing Utils

The eigen-testing-utils crate provides a set of utilities for testing Ethereum-based contracts and services within the Eigen ecosystem. This crate is designed to simplify interactions with local Anvil instances and Holesky/Mainnet environments by providing constant addresses and helper functions to retrieve important contract addresses.

Anvil Utilities

Anvil Constants

Provides utilities for interacting with local Anvil instances. Key components include:

  • CONTRACTS_REGISTRY: The address of the local Anvil Contracts Registry.
  • ANVIL_RPC_URL: A static instance of the local Anvil RPC URL configured with required fillers.

Key Functions

  • get_service_manager_address(): Retrieves the address of the service manager contract.
  • get_registry_coordinator_address(): Retrieves the address of the registry coordinator contract.
  • get_operator_state_retriever_address(): Retrieves the address of the operator state retriever contract.
  • get_delegation_manager_address(): Retrieves the address of the delegation manager contract.
  • get_strategy_manager_address(): Retrieves the address of the strategy manager contract.
  • get_erc20_mock_strategy(): Retrieves the address of the ERC20 mock strategy contract.
  • get_proxy_admin(): Retrieves the address of the proxy admin contract.

Holesky Constants

Contains predefined addresses for various contracts on the Holesky test network.

Holesky Key Addresses

  • DELEGATION_MANAGER_ADDRESS: Address of the delegation manager.
  • STRATEGY_MANAGER_ADDRESS: Address of the strategy manager.
  • EIGENPOD_MANAGER_ADDRESS: Address of the Eigenpod manager.
  • AVS_DIRECTORY_ADDRESS: Address of the AVS directory.
  • SLASHER_ADDRESS: Address of the slasher.
  • REWARDS_COORDINATOR: Address of the rewards coordinator. And various strategy base addresses.

Mainnet Constants

Contains predefined addresses for various contracts on the Ethereum mainnet.

Mainnet Key Addresses

  • DELEGATION_MANAGER_ADDRESS: Address of the delegation manager.
  • STRATEGY_MANAGER_ADDRESS: Address of the strategy manager.
  • EIGENPOD_MANAGER_ADDRESS: Address of the Eigenpod manager.
  • AVS_DIRECTORY_ADDRESS: Address of the AVS directory.
  • SLASHER_ADDRESS: Address of the slasher.
  • StrategyBase_cbETH: Address of the cbETH strategy base.
  • StrategyBase_stETH: Address of the stETH strategy base. And various other strategy base addresses.

Example

Dependencies

~44–59MB
~1M SLoC