tree: bd731392f3681a12184edffee869c2fa8c144008 [path history] [tgz]
  1. copy_symbols.py
  2. cpp_crasher_klog.in
  3. cpp_crasher_klog.out
  4. cpp_crasher_syslog.in
  5. cpp_crasher_syslog.out
  6. kernel_panic.in
  7. kernel_panic.out
  8. kernel_panic_x64.in
  9. kernel_panic_x64.out
  10. multithread.in
  11. multithread.out
  12. README.md
  13. rust_crasher_stdout.in
  14. rust_crasher_stdout.out
  15. rust_crasher_syslog.in
  16. rust_crasher_syslog.out
  17. userboot.in
  18. userboot.out
tools/symbolizer/test_cases/README.md

Test cases for symbolizer

This directory contains the test cases for Fuchsia symbolizer. Each test case has an input file ending with “.in” and an output file ending with “.out”. Check the beginning of each file for a description for the test case.

Download symbol files

To run a symbolizer against a test case, first make sure the symbol files are downloaded at //prebuilt/test_data/symbolizer/symbols. This could be done by jiri init -fetch-optional=symbolizer-test-data && jiri fetch-packages.

Run the test cases manually

Currently the test cases are not hooked in any automated workflow. Here's an example to run the Go symbolizer against cpp_crasher_syslog.in manually.

fx symbol-index add prebuilt/test_data/symbolizer/symbols
fx symbolize < tools/symbolizer/test_cases/cpp_crasher_syslog.in

Upload symbol files for new test cases

When new test cases are added, normally new symbol files need to be added to //prebuilt/test_data/symbolizer/symbols. This could be done by copy_symbols.py. It will copy all mentioned symbol files to //prebuilt/test_data/symbolizer/symbols. Then you can upload it using cipd.

cipd create -install-mode copy \
  -name fuchsia/test_data/symbolizer/symbols \
  -in prebuilt/test_data/symbolizer/symbols \
  -tag version:$(date +%Y%m%d)