-
Notifications
You must be signed in to change notification settings - Fork 15
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
Refactor Test Fixture to support different worlds #160
Conversation
Currently, the `LrauvTestFixture` allows us to only load `BuoyantTethys.sdf`. This PR refactors the test fixture. It creates two test classes: * `LrauvTestFixtureBase` - An abstract base class which contains all the common functionality. * `LrauvTestFixture` - Inherits from `LrauvTestFixtureBase` and loads the `buoyant_tethys.sdf`. Signed-off-by: Arjo Chakravarty <[email protected]>
Signed-off-by: Arjo Chakravarty <[email protected]>
Depends on #160 This PR adds a surface at z=0 to the default `buoyant_tethy.sdf`. Most things work as expected. I had to move the MassShifter test deeper underwater as the vehicle would not pitch enough at the surface (kind of expected I guess?). I moved the mass shifter test deeper under water. Signed-off-by: Arjo Chakravarty <[email protected]>
Depends on #161, #160 This PR validates the behaviour of the dropweight with the surface of the water. It modifies the drop weight test such that the vehicle is started at a 10m depth and we monitor its rise. The test makes sure that we do not exceed a height of 0.5m (this tolerance is required to account for the oscillations introduces by the transition). Signed-off-by: Arjo Chakravarty <[email protected]>
// Documentation inherited | ||
protected: void SetUp() override | ||
// Setup the specified world. | ||
// \param[in] _worldName Name of the world to load. |
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.
// \param[in] _worldName Name of the world to load. | |
/// \param[in] _worldName Name of the world to load. |
/// \brief Loads the default "buyant_tethys.sdf" world. | ||
class LrauvTestFixture : public LrauvTestFixtureBase | ||
{ | ||
/// Documentation inherited |
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.
/// Documentation inherited | |
// Documentation inherited |
So, within the Ignition codebase, we leave "Documentation inherited" comments to explain that we're not adding documentation on purpose. When it's not added, the documentation is taken from the base class. But if the comment is added with three ///
, then that actually overrides the base class' doc block and writes "Documentation inherited" as the documentation.
Not important here since we're not generating docs for these classes, but I thought I should mention
Signed-off-by: Arjo Chakravarty <[email protected]>
Currently, the
LrauvTestFixture
allows us to only loadBuoyantTethys.sdf
. This PR refactors the test fixture. It creates two test classes:LrauvTestFixtureBase
- An abstract base class which contains all the common functionality.LrauvTestFixture
- Inherits fromLrauvTestFixtureBase
and loads thebuoyant_tethys.sdf
.