Ensure functions have docstrings for documentation
def test_release_options_match_packages() -> None:
1"""Verify _release.yml dropdown options match actual package directories.23Dropdown options are short names (e.g. `openai`, `core`). The workflow's4`EFFECTIVE_WORKING_DIR` expression re-adds the `libs/` prefix for top-level5packages and `libs/partners/` for everything else. This test reconstructs the6full path for each short name and compares against packages on disk.7"""89from pathlib import Path1011import yaml1213REPO_ROOT = Path(__file__).resolve().parents[2]1415# Keep in sync with the non-partner allowlist in `EFFECTIVE_WORKING_DIR`16# in `.github/workflows/_release.yml`.17TOP_LEVEL_PACKAGES = frozenset(18 {"core", "langchain", "langchain_v1", "text-splitters", "standard-tests", "model-profiles"}19)202122def _get_release_options() -> list[str]:23 workflow = REPO_ROOT / ".github" / "workflows" / "_release.yml"24 with open(workflow) as f:25 data = yaml.safe_load(f)26 try:27 # PyYAML (YAML 1.1) parses the bare key `on` as boolean True28 return data[True]["workflow_dispatch"]["inputs"]["working-directory"]["options"]29 except (KeyError, TypeError) as e:30 msg = f"Could not find workflow_dispatch options in {workflow}: {e}"31 raise AssertionError(msg) from e323334def _expand_option(option: str) -> str:35 if option in TOP_LEVEL_PACKAGES:36 return f"libs/{option}"37 return f"libs/partners/{option}"383940def _get_package_dirs() -> set[str]:41 libs = REPO_ROOT / "libs"42 dirs: set[str] = set()43 # Top-level packages (libs/core, libs/langchain, etc.)44 for p in libs.iterdir():45 if p.is_dir() and (p / "pyproject.toml").exists():46 dirs.add(f"libs/{p.name}")47 # Partner packages (libs/partners/*)48 partners = libs / "partners"49 if partners.exists():50 for p in partners.iterdir():51 if p.is_dir() and (p / "pyproject.toml").exists():52 dirs.add(f"libs/partners/{p.name}")53 return dirs545556def test_release_options_match_packages() -> None:57 options = {_expand_option(o) for o in _get_release_options()}58 packages = _get_package_dirs()59 missing_from_dropdown = packages - options60 extra_in_dropdown = options - packages61 assert not missing_from_dropdown, (62 f"Packages on disk missing from _release.yml dropdown: {missing_from_dropdown}"63 )64 assert not extra_in_dropdown, (65 f"Dropdown options with no matching package directory: {extra_in_dropdown}"66 )
Same data, no extra tab — call code_get_file + code_get_findings over MCP from Claude/Cursor/Copilot.