Make host tests independent of global git identity

CI failed on the first real PR because five test commits relied on
a global user.name/user.email, which GitHub runners do not set.
Pass -c user.name=Test -c user.email=test@example.com on every
test commit, matching the helper that already does this for the
other tests. host.py worktree commits inherit the repo config
set by _init_git_repo, so they needed no change.
This commit is contained in:
host committed 2026-10-26 02:59:06 +08:00
1 parent b290531369
commit 50bc03cd51
1 file changed
+5 -5
+5 -5
View File
@@ -93,7 +93,7 @@ class MergeVerifyTest(unittest.TestCase):
" self.assertEqual(f(), 1)\n") " self.assertEqual(f(), 1)\n")
(tests_dir / "test_mod.py").write_text(body, encoding="utf-8") (tests_dir / "test_mod.py").write_text(body, encoding="utf-8")
subprocess.run(["git", "add", "-A"], cwd=tmp, check=True) subprocess.run(["git", "add", "-A"], cwd=tmp, check=True)
subprocess.run(["git", "commit", "-qm", "initial"], cwd=tmp, subprocess.run(["git", "-c", "user.name=Test", "-c", "user.email=test@example.com", "commit", "-qm", "initial"], cwd=tmp,
check=True) check=True)
# worktree 手动建:模拟 host 的 worktree/分支 # worktree 手动建:模拟 host 的 worktree/分支
subprocess.run(["git", "worktree", "add", os.path.join(tmp, "wt"), subprocess.run(["git", "worktree", "add", os.path.join(tmp, "wt"),
@@ -142,7 +142,7 @@ class MergeVerifyTest(unittest.TestCase):
Path(tmp, "mod.py").write_text("def f():\n return 1\n", Path(tmp, "mod.py").write_text("def f():\n return 1\n",
encoding="utf-8") encoding="utf-8")
subprocess.run(["git", "add", "-A"], cwd=tmp, check=True) subprocess.run(["git", "add", "-A"], cwd=tmp, check=True)
subprocess.run(["git", "commit", "-qm", "initial"], cwd=tmp, subprocess.run(["git", "-c", "user.name=Test", "-c", "user.email=test@example.com", "commit", "-qm", "initial"], cwd=tmp,
check=True) check=True)
# 分支1:加 add2 # 分支1:加 add2
subprocess.run(["git", "worktree", "add", subprocess.run(["git", "worktree", "add",
@@ -458,7 +458,7 @@ class GithubPRTest(unittest.TestCase):
_init_git_repo(tmp) _init_git_repo(tmp)
Path(tmp, "f.txt").write_text("x\n") Path(tmp, "f.txt").write_text("x\n")
subprocess.run(["git", "add", "-A"], cwd=tmp, check=True) subprocess.run(["git", "add", "-A"], cwd=tmp, check=True)
subprocess.run(["git", "commit", "-qm", "initial"], subprocess.run(["git", "-c", "user.name=Test", "-c", "user.email=test@example.com", "commit", "-qm", "initial"],
cwd=tmp, check=True) cwd=tmp, check=True)
task = {"name": "t", "branch": "host/t", "status": "completed", task = {"name": "t", "branch": "host/t", "status": "completed",
"prompt": "do it"} "prompt": "do it"}
@@ -473,12 +473,12 @@ class GithubPRTest(unittest.TestCase):
_init_git_repo(repo) _init_git_repo(repo)
Path(repo, "f.txt").write_text("x\n") Path(repo, "f.txt").write_text("x\n")
subprocess.run(["git", "add", "-A"], cwd=repo, check=True) subprocess.run(["git", "add", "-A"], cwd=repo, check=True)
subprocess.run(["git", "commit", "-qm", "initial"], subprocess.run(["git", "-c", "user.name=Test", "-c", "user.email=test@example.com", "commit", "-qm", "initial"],
cwd=repo, check=True) cwd=repo, check=True)
subprocess.run(["git", "checkout", "-qb", "host/t1"], subprocess.run(["git", "checkout", "-qb", "host/t1"],
cwd=repo, check=True) cwd=repo, check=True)
Path(repo, "f.txt").write_text("y\n") Path(repo, "f.txt").write_text("y\n")
subprocess.run(["git", "commit", "-qam", "change"], subprocess.run(["git", "-c", "user.name=Test", "-c", "user.email=test@example.com", "commit", "-qam", "change"],
cwd=repo, check=True) cwd=repo, check=True)
remote = os.path.join(tmp, "remote.git") remote = os.path.join(tmp, "remote.git")
subprocess.run(["git", "init", "--bare", "-q", remote], subprocess.run(["git", "init", "--bare", "-q", remote],