* Parameterize test executors for all executor types (#1222)
* Relocate test_executor to executors directory
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Parametrize test_executors for all executor types
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* PR Fixup
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* More fixup
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Fixup
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Adding issue for tracking
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Remove tests for non-foxy API
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Derive and throw exception in spin_some spin_all for StaticSingleThreadedExecutor (#1220)
* Derive and throw exception in spin_some spin_all
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Fix style and add unit test
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Remove header changes and throw exceptions in .cpp
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Add unit test for static_executor_entities_collector
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* PR Fixup
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Unit tests for allocator_memory_strategy.hpp
Part 1 of 2 for this file, but part 2 of 3 for memory strategies
overall
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* PR Fixup
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Remove find_package
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Remove ref to osrf_testing_tools
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Check period duration in create_wall_timer
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Adding comments
Signed-off-by: Stephen Brawner <brawner@gmail.com>
`this->node_options_` might still be `nullptr` for a default initialized NodeOptions instance.
`use_global_arguments()` must return `this->use_global_arguments_`, in analogy to `NodeOptions::enable_rosout()`.
Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
Co-authored-by: Johannes Meyer <johannes@intermodalics.eu>
* Fix conversion from negative Duration or Time to the respective message type and throw in Duration::to_rmw_time() if the duration is negative.
rmw_time_t cannot represent negative durations.
Constructors and assignment operators can be just defaulted.
Other changes are mainly cosmetical, to make conversions between signed
and unsigned types and between 32-bit and 64-bit types more explicit.
Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
* Add -Wconversion compiler option and fix implicit conversions that might alter the value
Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
* Fix usage of fixture class in some unit tests by using gtest macro TEST_F() instead of TEST().
Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
* Add compiler option -Wno-sign-conversion to fix build with Clang on macOS
Signed-off-by: Johannes Meyer <johannes@intermodalics.eu>
Co-authored-by: Johannes Meyer <johannes@intermodalics.eu>
* Log error instead of throwing exception in Transition and State reset(), mark no except (#1297)
* Catch potential exception in destructor and log
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Remove thrown error from reset and mark it no except
Signed-off-by: Stephen Brawner <brawner@gmail.com>
* Remove noexcept for ABI compatibility
Signed-off-by: Stephen Brawner <brawner@gmail.com>
If the user doesn't retain a reference to the returned shared pointer there will be zero references and their callback will be unregistered.
Signed-off-by: Jacob Perron <jacob@openrobotics.org>
Signed-off-by: Donghee Ye <donghee.ye@samsung.com>
Make Executor::spin_once_impl private before backporting, to avoid API compatibility issues
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
* Add -Wnon-virtual-dtor -Woverloaded-virtual compiler options
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
* Add missing virtual dtors
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
* please linter
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
This keeps it from going out of scope while the executor
is still dealing with QoSEvents.
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>