Skip to content

docs: improve test suite documentation - #2

Merged
man4ish merged 1 commit into
mainfrom
docs/test-suite-docstrings
Sep 18, 2026
Merged

man4ish merged 1 commit into
mainfrom
docs/test-suite-docstrings

Conversation

@man4ish

@man4ish man4ish commented Sep 18, 2026

Copy link
Copy Markdown
Collaborator

Summary

Documentation-only pass over the dev-docker test suite, following the standard used in the completed Studio, API Gateway and Workbench campaigns.

  • tests/test_dev_docker.py (the repo's only Python test file) keeps its module docstring and gains the Developer: attribution block
  • All 117 test_* methods now have assertion-specific docstrings (117/117; previously 0/117)
  • All 16 Test* classes were already documented; those docstrings are preserved
  • 2 helpers documented where they encode non-obvious assumptions (_exposed_ports, _mod)

Only docstrings changed: 1 file, +164 / -0. No Dockerfile, run_ai_dev.sh, requirements, CI or config changes.

Verification

  • AST equivalence vs a87b5d0: executable AST differences = 0
  • Line-level: all 164 added lines fall inside docstrings; nothing removed
  • Syntax: OK; git diff --check clean
  • Tests (repo's own pytest config): 117 passed before and after, with identical per-test outcomes; focused subset (TestRunScript + TestBranchCoverage) 36 passed before and after
  • Every test reads the Dockerfile, requirements or run_ai_dev.sh as text, or patches module helpers with mocks, so no Docker daemon, network or services were involved

Documentation notes

Several tests assert less than their names suggest. The docstrings describe what is actually checked; the tests are unchanged:

  • test_gatk_in_path / test_snpeff_in_path only check the tool name appears in the Dockerfile, not PATH membership
  • test_base_image_has_cuda_tag only checks for py3 in the tag
  • test_pip_upgraded_before_install / test_pull_before_build do not assert ordering
  • test_apt_update_without_install_failure_branch actually feeds an install-without-update stub

Possible follow-up (not addressed here)

test_requirements_dgx_documents_local_installs asserts assertIn("DGX", content or "dgx" in content.lower()). Because content is a non-empty string, the or short-circuits and the check is effectively a case-sensitive "DGX" in content; the lowercase fallback never runs. Likely unintended, but out of scope for a documentation-only change.

🤖 Generated with Claude Code

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@man4ish
man4ish merged commit 88487dd into main Sep 18, 2026
1 check passed
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