ethergo

module
v0.0.29 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 16, 2023 License: MIT

README

Ethergo

** Not yet suiteable for production use

Ethergo is an end-to-end embedded test suite built for Synapse in go. It allows you to deploy contracts to a variety of backends.

Directories

Path Synopsis
Package backends provides different kinds of backends you can test against that conform to a common interface thesse allow you to test eth functionality against a variety of backends
Package backends provides different kinds of backends you can test against that conform to a common interface thesse allow you to test eth functionality against a variety of backends
base
Package base contains a common interface to be used by multiple backends.
Package base contains a common interface to be used by multiple backends.
ganache
Package ganache provides a ganache backend
Package ganache provides a ganache backend
geth
Package geth handles creating mock geth clients and simulated backends
Package geth handles creating mock geth clients and simulated backends
preset
Package preset defines preset backends that can be used to create backends of different types
Package preset defines preset backends that can be used to create backends of different types
simulated
Package simulated represents a simulated backend.
Package simulated represents a simulated backend.
simulated/multibackend
Package multibackend contains a copy of https://github.com/ethereum/go-ethereum/blob/master/accounts/abi/bind/backends/simulated.go that allows use with multiple chains by exporting new methods.
Package multibackend contains a copy of https://github.com/ethereum/go-ethereum/blob/master/accounts/abi/bind/backends/simulated.go that allows use with multiple chains by exporting new methods.
Package chain contains a common interface for running commands against evm rpc's.
Package chain contains a common interface for running commands against evm rpc's.
chainwatcher
Package chainwatcher provides methods/interfaces for chain agnostic event tracking
Package chainwatcher provides methods/interfaces for chain agnostic event tracking
client
Package client provides a common interface for eth-based clients used with chain It defines the minimum necessary methods to create a chain and implements a rate limiter and metrics around client usage- useful for monitoring and debugging.
Package client provides a common interface for eth-based clients used with chain It defines the minimum necessary methods to create a chain and implements a rate limiter and metrics around client usage- useful for monitoring and debugging.
client/near
Package near contains workaround for the aurora rpc
Package near contains workaround for the aurora rpc
gas
Package gas handles generating deterministic gas price estimates.
Package gas handles generating deterministic gas price estimates.
gas/backend
Package backend contains the common oracle backend for gas estimators
Package backend contains the common oracle backend for gas estimators
gas/londinium
Package londinium as the name implies, contains the pre-london version of the gas price estimation
Package londinium as the name implies, contains the pre-london version of the gas price estimation
gas/london
Package london provides wrappers to deterministically generate a tip cap + fee cap for evm based chains.
Package london provides wrappers to deterministically generate a tip cap + fee cap for evm based chains.
watcher
Package watcher watches the chain for events
Package watcher watches the chain for events
Package contracts contains contract types
Package contracts contains contract types
Package debug is a common contract store for local stacktraces and remote stacktraces.
Package debug is a common contract store for local stacktraces and remote stacktraces.
tenderly
Package tenderly handles interacting with tenderly for easier debugging.
Package tenderly handles interacting with tenderly for easier debugging.
Package deployer contains utilities for deploying test contracts
Package deployer contains utilities for deploying test contracts
Package example defines an example project that uses ethergo
Package example defines an example project that uses ethergo
counter
Code generated by synapse abigen DO NOT EDIT.
Code generated by synapse abigen DO NOT EDIT.
Package forker allows a user to fork an arbitrary blockchain and make rpc calls against it.
Package forker allows a user to fork an arbitrary blockchain and make rpc calls against it.
Package internal contains dev dependencies required for running developer tasks (coverage testing, etc) that are not required by the project itself.
Package internal contains dev dependencies required for running developer tasks (coverage testing, etc) that are not required by the project itself.
testconsts
Package testconsts contains constants for testing
Package testconsts contains constants for testing
Package manager manages deployers to make them as simple as possible
Package manager manages deployers to make them as simple as possible
Package mocks mocks address, clients, etc for evm chains
Package mocks mocks address, clients, etc for evm chains
Package parser provides an interface for parsing hardhat deployments
Package parser provides an interface for parsing hardhat deployments
Package signer provides a common interface for signing
Package signer provides a common interface for signing
nonce
Package nonce is the nonce manager
Package nonce is the nonce manager
signer/kmssigner
Package kmssigner contains a new signer that uses aws-kms as an hsm
Package kmssigner contains a new signer that uses aws-kms as an hsm
signer/kmssigner/kmsmock
Package kmsmock sets up a mock kms server that is used for testing our kms driver TODO: we should consider moving this to a common testutils/mocking folder or something internal to avoid exporting
Package kmsmock sets up a mock kms server that is used for testing our kms driver TODO: we should consider moving this to a common testutils/mocking folder or something internal to avoid exporting
signer/kmssigner/kmsmock/internal
Package internal contains modules exported from local-kms in order to avoid rewriting code
Package internal contains modules exported from local-kms in order to avoid rewriting code
signer/localsigner
Package localsigner is a local signer
Package localsigner is a local signer
wallet
Package wallet contains utilities for importing/using eth wallets.
Package wallet contains utilities for importing/using eth wallets.
Package util contains eth type utils
Package util contains eth type utils

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL