Skip to content

[ROS2][tests][refact] Update tests

Julia Sanchez requested to merge feat/UpdateTests into feat/ROS2


Clean the tests. Fix non deterministic tests failures because of frame dropping.

**NOTE** : CI pipeline will fail



The comparison of a frame from the reference file is performed based on timestamp and not on direct order. This allows to drop some frames. A threshold number of dropped frames is added. This fixes potential communication issues.

The threshold for computation time is increased to solve the failure cases due to high computation time variations between runs.


  • Long lines are cut
  • Upper/Lower cases are uniformized
  • Comments are enriched/corrected
  • Parameters are regrouped
  • Spaces are added


  • The format f the files is updated to CSV (comma) with header line. The poses are saved as inline matrices to make the representation easier and avoid Euler angles convention mixes.
  • The averaging process is factorized into a manager to avoid multiple counters


Pass artifacts between jobs with dependencies keyword in CI script


Pipeline here : format of the previous files is bad -> pipeline fails but it is OK for now.


  • Camel case everywhere except for ROS variables/parameters
  • Lower case for local variables and lambda functions
  • Upper case for pour members, methods and tool functions (in Utils)
  • Precise namespace when calling a function (or this->X or classe.X)
  • Align code (for multiline if and while, "&&" or "||" go in upper line to ensure alignement)
  • Space between if, while, for and parenthesis
  • Space between operators and variables: e.g. a + b
  • Space after ","
  • Mind your commit titles/desc (plurals, he/she + "s", correct tags, title should begin by a verb...)
  • Function names should start with a verb, variable names should start with a name
  • Macros should be between {}
  • Do not use negative boolean (i.e. noJoe)
  • Check minimal size of the types (double -> float -> int -> uint)
  • Check const and ref in functions arguments
  • References should be written "type& name", not "type &name"
  • Update documentation if needed
  • Add MR labels [ROS]/[ROS2]/[PV]
  • If ros/ros2, update task table here
  • Add a comment over each non trivial function in header files
  • Add a header to each new file
Edited by Julia Sanchez

Merge request reports