from pathlib import Path import unittest REPO_ROOT = Path(__file__).resolve().parents[1] class RepoStructureTests(unittest.TestCase): def test_root_workspace_files_exist(self): required_files = [ "package.json", "pnpm-workspace.yaml", "tsconfig.base.json", "docker-compose.yml", ".env.example", ] for relative_path in required_files: with self.subTest(path=relative_path): self.assertTrue((REPO_ROOT / relative_path).is_file()) def test_app_package_manifests_exist(self): required_files = [ "apps/web/package.json", "apps/api/package.json", "apps/worker/package.json", ] for relative_path in required_files: with self.subTest(path=relative_path): self.assertTrue((REPO_ROOT / relative_path).is_file()) if __name__ == "__main__": unittest.main()