Fixes flaky RobotState test (backport #3105) #3108
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Fixes #3103 by ensuring that the
dirty_link_transforms_
member is cleared before querying theRobotState
See #3102 for more details on the cause.
TLDR:
Setting the build type to Release causes tests to silently fail, whereas Debug does not (some tests rely on assert calls, which are enabled / disabled based on the presence of the
NDBUG
macro variable, which is set by CMake depending on the build type).See the SonarScan pipeline call to ros-industrial/industrial_ci@master, which sets DCMAKE_BUILD_TYPE to Debug (and where the tests fail), and the same call in the rolling-ci pipeline (where the tests pass), which sets the same variable to Release.
I've also added a comment (and demonstration of the fix, at least for this test) locally.
Checklist
This is an automatic backport of pull request #3105 done by [Mergify](https://mergify.com).