From 9c6a2c1d95fa3d181b3ec424495fc30dc60b9240 Mon Sep 17 00:00:00 2001 From: Gale W Date: Tue, 21 Apr 2026 14:21:00 -0400 Subject: [PATCH] tests: cover repeated swift guidance sync root resolution --- ...st_swift_package_guidance_sync_workflow.py | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/plugins/apple-dev-skills/tests/test_swift_package_guidance_sync_workflow.py b/plugins/apple-dev-skills/tests/test_swift_package_guidance_sync_workflow.py index 702936be..2064704b 100644 --- a/plugins/apple-dev-skills/tests/test_swift_package_guidance_sync_workflow.py +++ b/plugins/apple-dev-skills/tests/test_swift_package_guidance_sync_workflow.py @@ -115,6 +115,30 @@ def test_generated_repo_maintenance_validation_uses_repo_self_dir(self) -> None: self.assertEqual(proc.returncode, 0, proc.stderr or proc.stdout) self.assertIn("Repo-maintenance validation completed successfully.", proc.stdout) + def test_rerunning_sync_preserves_repo_maintenance_root_resolution(self) -> None: + with tempfile.TemporaryDirectory() as tmpdir: + repo_root = Path(tmpdir).resolve() + (repo_root / "Package.swift").write_text("// swift-tools-version: 6.0\n", encoding="utf-8") + + first_code, first_payload = self.run_script("--repo-root", str(repo_root)) + self.assertEqual(first_code, 0) + self.assertEqual(first_payload["status"], "success") + + second_code, second_payload = self.run_script("--repo-root", str(repo_root)) + self.assertEqual(second_code, 0) + self.assertEqual(second_payload["status"], "success") + + subprocess.run(["git", "init"], cwd=repo_root, check=True, capture_output=True, text=True) + proc = subprocess.run( + ["sh", "scripts/repo-maintenance/validate-all.sh"], + cwd=repo_root, + capture_output=True, + text=True, + check=False, + ) + self.assertEqual(proc.returncode, 0, proc.stderr or proc.stdout) + self.assertIn("Repo-maintenance validation completed successfully.", proc.stdout) + def test_sync_appends_section_to_existing_agents(self) -> None: with tempfile.TemporaryDirectory() as tmpdir: Path(tmpdir, "Package.swift").write_text("// swift-tools-version: 6.0\n", encoding="utf-8")