fix(tests): skip test_collision.py cases that require coal#538
Merged
Conversation
test_collision.py never used the skip_no_collision_checking marker that test_ELink.py/test_ERobot.py/test_Robot.py already rely on, so on Windows (where coal has no wheels, see tech-debt.md) every coal-dependent case hard-failed with ImportError instead of skipping. closest_point()/iscollided() call _ensure_coal(), which requires coal before any collision=False check runs — so TestCollisionFalseGuard and TestInitCoalDirect need the marker too, even though they're nominally testing a guard rather than real geometry. TestToDict and plain construction/warning checks (test_box_warns, the two non-coal-loading TestEnvironmentGuards cases) never touch coal and are left unmarked. Rehearsed both ways: with coal installed, all 64 tests pass unchanged; with coal and trimesh uninstalled (simulating Windows), 14 pass and 50 skip cleanly, zero failures. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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.
Summary
test_collision.pynever used theskip_no_collision_checkingmarker thattest_ELink.py/test_ERobot.py/test_Robot.pyalready rely on, so on Windows (coalhas no PyPI wheels) every coal-dependent case hard-failed withImportErrorinstead of skipping — 52 failures per Windows job.closest_point()/iscollided()call_ensure_coal(), which requires coal before anycollision=Falsecheck runs — soTestCollisionFalseGuardandTestInitCoalDirectneed the marker too, even though they're nominally testing a guard rather than real geometry.TestToDictand plain construction/warning checks (test_box_warns, twoTestEnvironmentGuardscases that mock the missing-coal path directly) never touch coal and are left unmarked — they should keep running everywhere.Test plan
coalinstalled: all 64 tests pass, unchangedcoal/trimeshuninstalled (simulating Windows): 14 pass, 50 skip cleanly, 0 failures🤖 Generated with Claude Code