go-ethereum/eth/tracers/internal/tracetest
Sina M 978ca5fc5e
eth/tracers: various fixes (#30540)
Breaking changes:

- The ChainConfig was exposed to tracers via VMContext passed in
`OnTxStart`. This is unnecessary specially looking through the lens of
live tracers as chain config remains the same throughout the lifetime of
the program. It was there so that native API-invoked tracers could
access it. So instead we moved it to the constructor of API tracers.

Non-breaking:

- Change the default config of the tracers to be `{}` instead of nil.
This way an extra nil check can be avoided.

Refactoring:

- Rename `supply` struct to `supplyTracer`.
- Un-export some hook definitions.
2024-10-17 06:51:47 +02:00
..
testdata internal/ethapi: remove td field from block (#30386) 2024-10-01 11:36:56 +02:00
calltrace_test.go eth/tracers: various fixes (#30540) 2024-10-17 06:51:47 +02:00
flat_calltrace_test.go eth/tracers: various fixes (#30540) 2024-10-17 06:51:47 +02:00
makeTest.js Include tracerConfig in created tracing test (#30364) 2024-09-02 10:30:33 +02:00
prestate_test.go eth/tracers: various fixes (#30540) 2024-10-17 06:51:47 +02:00
README.md eth/tracers: live chain tracing with hooks (#29189) 2024-03-22 18:53:53 +01:00
supply_test.go all: implement EIP-7002 & EIP-7251 (#30571) 2024-10-11 21:36:13 +02:00
util.go eth/tracers: fix base fee and set blob fee in tests (#29376) 2024-04-01 14:53:56 +02: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' })