Test suite for validating error code implementations across different Ethereum clients. Test scenarios for eth_ methods are here
The tests can be run against different Ethereum clients locally with docker or an actual CHAIN's RPCs
- Set your private key:
export PRIVATE_KEY=your_private_key_here- Run tests:
# Test with Geth
go run main.go --env=geth-local > reports/geth-local.log
# Test with Besu
go run main.go --env=besu-local > reports/besu-local.logNote: Besu dev mode comes with a pre-funded account: https://besu.hyperledger.org/private-networks/reference/accounts-for-testing
Convert logs to CSV:
go run main.go report reports/geth-local.logOutput: geth-local.csv
Edit pkg/config/config.go:
myClientConfig = Config{
Network: "my-client",
Url: "http://localhost:8545",
From: "0xYourAddress",
PrivateKey: os.Getenv("PRIVATE_KEY"),
ChainID: 1337,
LocalNodeType: "myclient", // Will need to configure the docker setup as well to run this client
}Add to GetConfig() function:
case "myclient":
return myClientConfig, nilAdd the new client docker setup in localnode/manager.go