Add Continuous Integration test on parsing URDF models #24
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.
This PR adds a first test in which
rod
is used to load URDF models from robot-descriptions/robot_descriptions.py and check the read information against robotology/idyntree.Note that
rod
has not direct support of URDF, we only support SDF. As a workaround, we expect to findign sdf|gz sdf
installed system-wise, and callsdformat
to convert the URDF to SDF before parsing it withrod
.This processing has some side effect. In particular, the URDF model is processed by sdformat and the resulting SDF might differ particularly regarding the lumping logic of links attached through fixed joints.
The test uses iDynTree as ground truth. Similarly, also iDynTree performs link lumping, but it is not 100% compatible with the logic of sdformat. In particular, this PR considers common robot models that work in iDynTree. There are models in which I get the following mismatches:
The models that do not work will possibly get fixed in the future.
The test runs in two different envs:
apt
and all the rest from PyPI.conda
.On Windows, the
gz sdf
command line we use for the URDF to SDF conversion does not work for some reason, thepytest
suite is disabled on this OS. cc @traversaroWindows error