openpilot/selfdrive/test/process_replay
Willem Melching 33edb62967
hypothesis fuzz testing (#20818)
* add hypothesis testing

* cleanup

* some cleanup

* check for infinity too

* one-liner

* add more fields that are used

* no print

* add locationd testing

* sensor timestamp is signed

* recursive finite checking

* keep locationd inputs finite for now

* specify proces name on command line

* increase timeout and add raw speed

* abstract runner in function

* add unittest class
2021-05-05 13:25:29 +02:00
..
README.md Process replay for C++ daemons (#2288) 2020-10-12 11:18:53 +02:00
__init__.py selfdrive/test 2020-01-17 11:16:14 -08:00
camera_replay.py Manager cleanup (#20231) 2021-03-05 11:03:23 +01:00
compare_logs.py delay controls start (#20761) 2021-04-30 13:55:17 -07:00
inject_model.py Manager cleanup (#20231) 2021-03-05 11:03:23 +01:00
model_ref_commit no heading cost (#20594) 2021-04-06 23:49:29 -07:00
model_replay_ref_commit no heading cost (#20594) 2021-04-06 23:49:29 -07:00
process_replay.py hypothesis fuzz testing (#20818) 2021-05-05 13:25:29 +02:00
ref_commit Chrysler BSM info signal (#20694) 2021-05-04 20:37:39 -07:00
test_fuzzy.py hypothesis fuzz testing (#20818) 2021-05-05 13:25:29 +02:00
test_processes.py fix process replay on local files (#20758) 2021-04-26 20:50:47 -07:00
update_model.py fix inject_model import 2021-02-23 13:24:37 -08:00
update_refs.py add type hints to selfdrive/version.py 2020-09-19 14:55:27 -07:00

README.md

process replay

Process replay is a regression test designed to identify any changes in the output of a process. This test replays a segment through individual processes and compares the output to a known good replay. Each make is represented in the test with a segment.

If the test fails, make sure that you didn't unintentionally change anything. If there are intentional changes, the reference logs will be updated.

Use test_processes.py to run the test locally.

Currently the following processes are tested:

  • controlsd
  • radard
  • plannerd
  • calibrationd
  • ubloxd

Forks

openpilot forks can use this test with their own reference logs

To generate new logs:

./update_refs.py --no-upload

Then, check in the new logs using git-lfs. Make sure to also include the updated ref_commit file.