-
Notifications
You must be signed in to change notification settings - Fork 24
Feat/waypoint manager #645
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 1 commit
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
38f1fdb
waypoint mode handling
jorgenfj f3fc24b
update tests with new message
jorgenfj d5bbaca
initial package setup
jorgenfj 4ff98d5
ros interface function declaration
jorgenfj 4c30faa
node setup
jorgenfj dae4fa3
working prototype
jorgenfj 2b39764
reentrant cb, multithreaded
jorgenfj 676c54f
single threaded impl
jorgenfj ebb220c
conv threshold action goal
jorgenfj 490e307
default thresholdref conv value
jorgenfj 900f2af
removed switching logic
jorgenfj 7065c6a
removed timer execution
jorgenfj 7209ce3
sim test utils
jorgenfj 87ed751
waypoint_manager_test setup
jorgenfj 1818953
no rendering test arg
jorgenfj 8248353
waypoint tests, timeout error
jorgenfj 3aaf6f9
test refactor
jorgenfj 8784b2e
format
jorgenfj 4d73ecb
rename utils package
jorgenfj 76183bc
test suite and description
jorgenfj b82db78
first waypoint test
jorgenfj ba2fdff
removed unused function
jorgenfj b1089b8
renamed service field to priority. Added simple tests
jorgenfj 692e5ec
waypoint manager readme
jorgenfj 21c1d19
uniform attitude naming convention
jorgenfj 56ce067
fix pr requests
jorgenfj 8527941
update tests with new service fields
jorgenfj cdc97f7
four corner test
jorgenfj d1557c8
update util func name
jorgenfj 99def81
update with new action def
jorgenfj a2f413a
removed failing build type
jorgenfj 5826046
test dependencies
jorgenfj 4169c98
ignore failing yasmin package
jorgenfj 3afe906
remove __init__ files
jorgenfj 63f8854
quat_to_euler in make_pose helper
jorgenfj 80e8ce5
added __init__ file
jorgenfj c65d013
removed sim deps for test packages
jorgenfj 76f49ee
added action shutdown handling
jorgenfj 2d27647
removed waypoint manager set setup
jorgenfj c0e1185
added waypoint manager node tests
jorgenfj 3a69dbb
waypoint manager 4 corner sim test
jorgenfj 546f836
added missing launch testing test dependency
jorgenfj 1887321
add sleep for topic discovery
jorgenfj b26adc7
fix action member field name
jorgenfj f1f181a
removed unnecessary if here
jorgenfj File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
23 changes: 23 additions & 0 deletions
23
tests/simulator_tests/waypoint_manager_test/test/test_four_corner.py
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| from waypoint_manager_test.test_common.base_test import WaypointManagerTestBase | ||
| from waypoint_manager_test.test_common.launch_description import ( | ||
| generate_wm_test_description, | ||
| ) | ||
| from waypoint_manager_test.test_common.utils import make_waypoint | ||
|
|
||
|
|
||
| def generate_test_description(): | ||
| return generate_wm_test_description(bag=False) | ||
|
|
||
|
|
||
| class TestFourCorner(WaypointManagerTestBase): | ||
| def test_four_corner(self): | ||
| wp1 = make_waypoint(2.0, 0.0, 1.0) | ||
| wp2 = make_waypoint(2.0, 2.0, 1.0) | ||
| wp3 = make_waypoint(0.0, 2.0, 1.0) | ||
| wp4 = make_waypoint(0.0, 0.0, 1.0) | ||
|
|
||
| _, result = self.send_goal([wp1, wp2, wp3, wp4], persistent=False, conv=0.3) | ||
|
|
||
| assert result.success | ||
| assert result.pose_valid | ||
| self.assert_pose_close(result.final_pose, wp4.pose, tol=0.6) |
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could this be done for the bash script tests as well? I believe the launch test and script test should coexist, but in my opinion they should do different things. As it is now, the launch tests can directly replace the bash script based node tests, and test that the content in each package works by itself. This also gives test coverage, which is good. The integration tests should then be handled (as they are now) by the github actions workflow, where the whole system is started up in the same way as on deployment. One pro here is that the rosbag (in case of a failing run) is easily accessable from the artifact, as well as nice logs. The potential of using scripting to orchestrate integration tests is also far bigger.
IMO this gets the best of both worlds.
The immediate action I would do is to remove the node tests and put the launch-based node tests in their corresponding package (make an issue on this if you dont want to cook it up now).