from pathlib import Path from docforge import MkDocsRenderer from docforge.models import Project, Module def test_mkdocs_file_content(tmp_path: Path): project = Project("testpkg") project.add_module(Module("testpkg.mod")) out_dir = tmp_path / "docs" renderer = MkDocsRenderer() renderer.generate_sources(project, out_dir) content = (out_dir / "testpkg" / "mod.md").read_text() assert "# Mod" in content assert "::: testpkg.mod" in content def test_generate_readme_source_root(tmp_path: Path): project = Project("testpkg") root = Module("testpkg") root.docstring = "Test package documentation." project.add_module(root) project.add_module(Module("testpkg.mod")) docs_dir = tmp_path / "docs" renderer = MkDocsRenderer() renderer.generate_sources(project, docs_dir) renderer.generate_readme( project, docs_dir, module_is_source=True, ) readme = tmp_path / "README.md" assert readme.exists() content = readme.read_text() assert "# testpkg" in content assert "Test package documentation." in content