Files
afs/tests/test_discovery.py
2025-12-30 13:21:33 -05:00

38 lines
943 B
Python

from __future__ import annotations
from pathlib import Path
from afs.discovery import discover_contexts, get_project_stats
from afs.manager import AFSManager
from afs.schema import AFSConfig, GeneralConfig
def test_discover_contexts_ignores_names(tmp_path: Path) -> None:
root = tmp_path / "root"
root.mkdir()
alpha = root / "alpha"
alpha.mkdir()
legacy = root / "legacy"
legacy.mkdir()
beta = legacy / "beta"
beta.mkdir()
config = AFSConfig(
general=GeneralConfig(context_root=tmp_path / "context"),
)
manager = AFSManager(config=config)
manager.ensure(path=alpha)
manager.ensure(path=beta)
contexts = discover_contexts(search_paths=[root], config=config, max_depth=2)
names = [context.project_name for context in contexts]
assert "alpha" in names
assert "beta" not in names
stats = get_project_stats(contexts)
assert stats["total_projects"] == 1