Skip to content

Fix test collection broken by merging PRs #32 and #35 together - #36

Merged
annmoel merged 1 commit into
mainfrom
fix/post-merge-test-breakage
Sep 4, 2026
Merged

Fix test collection broken by merging PRs #32 and #35 together#36
annmoel merged 1 commit into
mainfrom
fix/post-merge-test-breakage

Conversation

@annmoel

@annmoel annmoel commented Sep 4, 2026

Copy link
Copy Markdown
Collaborator

PR #32 (fix/api-docs-correctness) renamed build_vessel_graph -> build_skeleton_graph in maskel/features.py. PR #35 (fix/degenerate-object- shapes), branched from main before #32 merged, added a new tests/test_pipeline.py import of the old name - no textual conflict since #32 never touched test_pipeline.py, so GitHub merged both cleanly, but the result was an ImportError at collection time that failed the entire test session, not just one test.

Also independently caught: PR #34 (fix/crash-on-uniform-mask) and PR #35 both added equivalent coverage for the same gaps (a 2D skimage bit-identical test, prune_spurs pipeline integration, degenerate single-pixel/border- touching objects) without either being aware of the other. Beyond being redundant, PR #35's TestPruneSpursIntegration silently shadowed #34's same-named class - Python doesn't error on class redefinition, so #34's version of that test class never actually ran once merged (ruff's F811 catches this, nothing else does). Kept #34's versions (a convergence-based _no_prunable_spurs_remain helper, and an extra mixed-isolated-pixel case neither redundant copy had) and removed #35's duplicates.

uv run pytest: 294 passed. ruff check/format: clean.

PR #32 (fix/api-docs-correctness) renamed build_vessel_graph ->
build_skeleton_graph in maskel/features.py. PR #35 (fix/degenerate-object-
shapes), branched from main before #32 merged, added a new
tests/test_pipeline.py import of the old name - no textual conflict since
#32 never touched test_pipeline.py, so GitHub merged both cleanly, but the
result was an ImportError at collection time that failed the entire test
session, not just one test.

Also independently caught: PR #34 (fix/crash-on-uniform-mask) and PR #35
both added equivalent coverage for the same gaps (a 2D skimage bit-identical
test, prune_spurs pipeline integration, degenerate single-pixel/border-
touching objects) without either being aware of the other. Beyond being
redundant, PR #35's TestPruneSpursIntegration silently shadowed #34's
same-named class - Python doesn't error on class redefinition, so #34's
version of that test class never actually ran once merged (ruff's F811
catches this, nothing else does). Kept #34's versions (a convergence-based
_no_prunable_spurs_remain helper, and an extra mixed-isolated-pixel case
neither redundant copy had) and removed #35's duplicates.

uv run pytest: 294 passed. ruff check/format: clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@annmoel
annmoel merged commit 3568467 into main Sep 4, 2026
1 check passed
@annmoel
annmoel deleted the fix/post-merge-test-breakage branch September 4, 2026 13:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant