Skip to content

Add testing for Jazzy packages#4

Open
emdemir wants to merge 52 commits intoros2-jazzyfrom
feature/jazzy-testing
Open

Add testing for Jazzy packages#4
emdemir wants to merge 52 commits intoros2-jazzyfrom
feature/jazzy-testing

Conversation

@emdemir
Copy link
Member

@emdemir emdemir commented Dec 17, 2024

Depends on EddyGharib/rules_ros2#7.

With this, it should be possible to test ros2_rosidl, ros2_rcl and ros2_rcl_interfaces. The first two are not fully covered yet but it's a start and verifies that the packages are built correctly at the basic level.

To test, do the following:

# Inside ros2-bazel-tools
$ ./create_workspace.py --registry path/to/bazel-public-registry --registry path/to/bazel-central-registry
# For each package:
$ cd workspace/ros2_rosidl
# Required because we don't support Bazel 8 at the moment
$ echo 7.4.1 > .bazelversion
# --cxxopt required for ros2_rcl since osrf_testing_tools_cpp needs it
$ bazel test //... --cxxopt=-std=c++17

emdemir and others added 30 commits December 9, 2024 13:59
Some of these had previously been created by hand; the rest are
automatically generated. The packages still need a bunch of fixes to
work, and are missing test definitions.

Co-Authored-By: Eddy Gharib <eddy.gharib@idealworks.com>
The Jazzy work had started before the tooling was fully mature and thus
we had started work on an older version. This commit hand-merges the
original versions to the latest ones from the ROS2 repos.
This is required by @ros2_rcl_interfaces//:test_msgs.
Certain distros set the libdir for 64-bit libraries to /usr/lib64. This
change leaks to CMake in rules_foreign_cc, so it can't find the library
it just built. This makes it so that the same path is always used.
cyclonedds: Set CMAKE_INSTALL_LIBDIR to lib unconditionally
EddyGharib and others added 22 commits December 13, 2024 18:09
The manual definitions for language-specific generators are no longer
required.
This is no longer used and isn't included in the workspace.
These two tests are all the tests present in ros2_rcl_interfaces and
they pass.
A lot of tests are missing but this at least verifies that the package
works.
These are unconditionally included in the headers so should be included
when building too; otherwise we get missing symbol errors when linking
tests.
There are still type support tests and such missing, but this at least
verifies package functionality.
@EddyGharib EddyGharib force-pushed the ros2-jazzy branch 2 times, most recently from 6f0541c to 664a8c6 Compare March 6, 2025 12:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants