# Trace test data ## Trace golden tests Trace tests can be generated by running ``` go generate . ``` with the relevant toolchain in this directory. This will put the tests into a `tests` directory where the trace reader tests will find them. A subset of tests can be regenerated by specifying a regexp pattern for the names of tests to generate in the `GOTRACETEST` environment variable. Test names are defined as the name of the `.go` file that generates the trace, but with the `.go` extension removed. ## Trace test programs The trace test programs in the `testprog` directory generate traces to stdout. Otherwise they're just normal programs. ## Trace debug commands The `cmd` directory contains helpful tools for debugging traces. * `gotraceraw` parses traces without validation. It can produce a text version of the trace wire format, or convert the text format back into bytes. * `gotracevalidate` parses traces and validates them. It performs more rigorous checks than the parser does on its own, which helps for debugging the parser as well. In fact, it performs the exact same checks that the tests do.