Files
StarPilot/selfdrive/test/process_replay
cydia2020 7c1abacda8 Toyota: keep Lane Sway Warning system (#24782)
* Toyota: pass through sway warning system signals

* signal doesn't seem to exist on the Prius V

bad log?

* remove duplicated checks

* syntax

* Revert "syntax"

This reverts commit 6c30c30d46e55a3595d7e2519b448d49c2f08a66.

* Revert "remove duplicated checks"

This reverts commit 6a364984eb8adfb0ee61b87452730da389dd5ff1.

* Revert "signal doesn't seem to exist on the Prius V"

This reverts commit 57fa571fde79336a48c50b617755fb2f68b2f124.

* Revert "Revert "signal doesn't seem to exist on the Prius V""

This reverts commit 9b1c3f6cacea74aa12a472bf02c469ffcd88eb24.

* Revert "Revert "remove duplicated checks""

This reverts commit 38bc7f3de6011e81c8e5f825a15dc9ec2fdcf5b0.

* Revert "Revert "syntax""

This reverts commit f81f93631f9a04406f818a2528680017635f229c.

* hard code values for Prius V

* send ui once every 25 frames

remove send ui logic

* send UI immediately on pcm_cancel_cmd

* draft

* clean that up

* same order as toyotacan

* update refs

Co-authored-by: Shane Smiskol <shane@smiskol.com>
old-commit-hash: 2f80580fee32d25857eac605a7eb88e63fa1126f
2022-12-13 15:42:54 -08:00
..
2020-01-17 11:16:14 -08:00
2022-09-19 15:19:26 -07:00
2021-05-06 19:27:58 +02:00

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. Use FILEREADER_CACHE='1' test_processes.py to cache log files.

Currently the following processes are tested:

  • controlsd
  • radard
  • plannerd
  • calibrationd
  • dmonitoringd
  • locationd
  • laikad
  • paramsd
  • ubloxd

Usage

Usage: test_processes.py [-h] [--whitelist-procs PROCS] [--whitelist-cars CARS] [--blacklist-procs PROCS]
                         [--blacklist-cars CARS] [--ignore-fields FIELDS] [--ignore-msgs MSGS] [--update-refs] [--upload-only]
Regression test to identify changes in a process's output
optional arguments:
  -h, --help            show this help message and exit
  --whitelist-procs PROCS               Whitelist given processes from the test (e.g. controlsd)
  --whitelist-cars WHITELIST_CARS       Whitelist given cars from the test (e.g. HONDA)
  --blacklist-procs BLACKLIST_PROCS     Blacklist given processes from the test (e.g. controlsd)
  --blacklist-cars BLACKLIST_CARS       Blacklist given cars from the test (e.g. HONDA)
  --ignore-fields IGNORE_FIELDS         Extra fields or msgs to ignore (e.g. carState.events)
  --ignore-msgs IGNORE_MSGS             Msgs to ignore (e.g. carEvents)
  --update-refs                         Updates reference logs using current commit
  --upload-only                         Skips testing processes and uploads logs from previous test run

Forks

openpilot forks can use this test with their own reference logs, by default test_proccess.py saves logs locally.

To generate new logs:

./test_processes.py

Then, check in the new logs using git-lfs. Make sure to also update the ref_commit file to the current commit.