test(timer): implement integration test for agnocast::Node timer#1104
Draft
test(timer): implement integration test for agnocast::Node timer#1104
Conversation
Signed-off-by: Koichi <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
5 tasks
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
…d after spin() (#1095) * feat: support lazy callback group Signed-off-by: atsushi421 <atsushi.yano.2@tier4.jp> * fix(agnocast_component_container_cie): address review comments - Iterate over node_wrappers_ instead of node_id_to_executor_wrappers_ in check_for_new_callback_groups() to detect late-created callback groups even for nodes that had no initial executor entries. - Make monitor polling interval configurable via monitor_polling_interval_ms ROS parameter (default: 100ms). - Fix DEFALUT_GET_NEXT typo to DEFAULT_GET_NEXT in non-deprecated container. Signed-off-by: atsushi421 <atsushi.yano.2@tier4.jp> * fix: clang-tidy --------- Signed-off-by: atsushi421 <atsushi.yano.2@tier4.jp> Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
* fix ioctl functions name Signed-off-by: Koichi <koichi.imai.2@tier4.jp> * clang-format Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp> --------- Signed-off-by: Koichi <koichi.imai.2@tier4.jp> Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi <koichi.imai.2@tier4.jp> Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
* put test_rmmod_refcount in test dir Signed-off-by: Koichi <koichi.imai.2@tier4.jp> * fix Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp> --------- Signed-off-by: Koichi <koichi.imai.2@tier4.jp> Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
Signed-off-by: Koichi <koichi.imai.2@tier4.jp> Signed-off-by: Koichi Imai <koichi.imai.2@tier4.jp>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
Verifies that a timer using wall clock (system time) fires its callback correctly via timerfd.
Verifies that after enabling ROS time override, the timer switches from timerfd to clock_eventfd and the callback fires correctly on forward time jumps.
Verifies that on a backward time jump, next_call_time is correctly reset to now + period, and the timer fires after advancing past the new next_call_time.
Verifies that multiple timers with different periods (50ms, 100ms, 150ms) fire independently in wall clock mode using timerfd.
Verifies that multiple timers with different periods (100ms, 200ms, 300ms) fire correctly in simulation time mode via clock_eventfd, with each timer firing at the expected time based on forward jumps.
Verifies that when a timer is created after ROS time is already active, it uses clock_eventfd (not timerfd) and fires correctly.
Verifies that a timer with zero period fires rapidly and continuously (always ready).
Verifies that a large forward time jump (spanning multiple periods) triggers only 1-2 callbacks, not one per missed period.
Related links
#990
How was this PR tested?
bash scripts/test/e2e_test_1to1(required)bash scripts/test/e2e_test_2to2(required)Notes for reviewers
Version Update Label (Required)
Please add exactly one of the following labels to this PR:
need-major-update: User API breaking changesneed-minor-update: Internal API breaking changes (heaphook/kmod/agnocastlib compatibility)need-patch-update: Bug fixes and other changesImportant notes:
need-major-updateorneed-minor-update, please include this in the PR title as well.fix(foo)[needs major version update]: barorfeat(baz)[needs minor version update]: quxrun-build-testlabel. The PR can only be merged after the build tests pass.See CONTRIBUTING.md for detailed versioning rules.