test_spinningBodyNDOFResetChecks

Regression tests for issue #469: Reset() configuration checks for effectors.

SpinningBodyNDOFStateEffector::Reset() iterates over every attached spinning body and validates that each dcm_S0P is a proper rotation and each ISPntSc_S is a symmetric, positive-definite inertia tensor. These tests break exactly one precondition at a time on an attached body and assert initialization raises a BasiliskError. (sHat_S is validated by its own setter, so it cannot reach Reset() in an invalid state.)

test_spinningBodyNDOFResetChecks.test_spinningBodyNDOF_resetAcceptsMasslessConnector()[source]

A massless connector body (mass == 0, zero inertia) followed by a massive body must initialize without error. This mirrors the branching modeling pattern.

test_spinningBodyNDOFResetChecks.test_spinningBodyNDOF_resetAcceptsValidConfig()[source]

A fully valid configuration must initialize without raising.

test_spinningBodyNDOFResetChecks.test_spinningBodyNDOF_resetErrors(brokenPrecondition, expectedMessage, breakIt)[source]

Reset() must raise a BasiliskError naming the misconfigured quantity.