go-ethereum/eth/tracers/internal/tracetest
rjl493456442 ac50181b74
Some checks are pending
/ Linux Build (push) Waiting to run
/ Linux Build (arm) (push) Waiting to run
/ Docker Image (push) Waiting to run
core: consolidate BlockChain constructor options (#31925)
In this pull request, the original `CacheConfig` has been renamed to `BlockChainConfig`.

Over time, more fields have been added to `CacheConfig` to support
blockchain configuration. Such as `ChainHistoryMode`, which clearly extends
beyond just caching concerns.

Additionally, adding new parameters to the blockchain constructor has
become increasingly complicated, since it’s initialized across multiple
places in the codebase. A natural solution is to consolidate these arguments 
into a dedicated configuration struct.

As a result, the existing `CacheConfig` has been redefined as `BlockChainConfig`.
Some parameters, such as `VmConfig`, `TxLookupLimit`, and `ChainOverrides`
have been moved into `BlockChainConfig`. Besides, a few fields in `BlockChainConfig`
were renamed, specifically:

- `TrieCleanNoPrefetch` -> `NoPrefetch`
- `TrieDirtyDisabled` -> `ArchiveMode`

Notably, this change won't affect the command line flags or the toml
configuration file. It's just an internal refactoring and fully backward-compatible.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
2025-06-19 12:21:15 +02:00
..
testdata tracers/prestate: always remove empty accounts from pre-state (#31427) 2025-06-16 15:34:48 +02:00
calltrace_test.go tracers/prestate: always remove empty accounts from pre-state (#31427) 2025-06-16 15:34:48 +02:00
erc7562_tracer_test.go eth/tracers/native: add erc7562 tracer (#31006) 2025-05-20 15:38:33 +02:00
flat_calltrace_test.go eth/tracers: refactor block context in test runner (#29450) 2025-02-20 15:04:35 +01:00
makeTest.js eth/tracers: refactor block context in test runner (#29450) 2025-02-20 15:04:35 +01:00
prestate_test.go eth/tracers: refactor block context in test runner (#29450) 2025-02-20 15:04:35 +01:00
README.md eth/tracers: live chain tracing with hooks (#29189) 2024-03-22 18:53:53 +01:00
supply_test.go core: consolidate BlockChain constructor options (#31925) 2025-06-19 12:21:15 +02:00
util.go eth/tracers: refactor block context in test runner (#29450) 2025-02-20 15:04:35 +01:00

Filling test cases

To fill test cases for the built-in tracers, the makeTest.js script can be used. Given a transaction on a dev/test network, makeTest.js will fetch its prestate and then traces with the given configuration. In the Geth console do:

let tx = '0x...'
loadScript('makeTest.js')
makeTest(tx, { tracer: 'callTracer' })