gz-sim icon indicating copy to clipboard operation
gz-sim copied to clipboard

Adds support for `ISystemReset` in test fixture

Open arjo129 opened this issue 1 year ago β€’ 1 comments

πŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”ΈπŸ”Έ

πŸŽ‰ New feature

Closes #<NUMBER>

Summary

This PR adds support for the Reset API to the test fixture. As TestFixture is one of the main ways one can get access to the ECM in python when trying to write some scripts for Deep Reinforcement Learning I realized that without Reset supported in the TestFixture API, end users would have a very hard time using our python APIs (which are actually quite nice). For reference I'm hacking a demo template here (its still barebones):

https://github.com/arjo129/gz_deep_rl_experiments/tree/ionic

Test it

I've added a test in #2648, but that includes some additional APIs to improve usability.

Checklist

  • [ ] Signed all commits for DCO
  • [ ] Added tests
  • [ ] Added example and/or tutorial
  • [ ] Updated documentation (as needed)
  • [ ] Updated migration guide (as needed)
  • [ ] Consider updating Python bindings (if the library has them)
  • [ ] codecheck passed (See contributing)
  • [ ] All tests passed (See test coverage)
  • [ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

arjo129 avatar Oct 11 '24 05:10 arjo129

Upon further examination I think this may break ABI cause we are adding a base class. I probably should port this to Gazebo J.

arjo129 avatar Oct 11 '24 10:10 arjo129

Codecov Report

Attention: Patch coverage is 14.28571% with 12 lines in your changes missing coverage. Please review.

Project coverage is 68.76%. Comparing base (712643f) to head (9096ed6). Report is 28 commits behind head on main.

Files with missing lines Patch % Lines
src/TestFixture.cc 0.00% 8 Missing :warning:
python/src/gz/sim/TestFixture.cc 33.33% 4 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2647      +/-   ##
==========================================
- Coverage   68.80%   68.76%   -0.04%     
==========================================
  Files         341      341              
  Lines       33037    33051      +14     
==========================================
- Hits        22730    22729       -1     
- Misses      10307    10322      +15     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar Dec 20 '24 05:12 codecov[bot]