[feat]. Add @codex -h help summary command
This commit is contained in:
@@ -146,3 +146,43 @@ def test_process_one_job_skips_review_when_repo_config_disabled(monkeypatch) ->
|
||||
with session_factory() as session:
|
||||
stored_job = session.execute(select(ReviewJob).where(ReviewJob.id == job.id)).scalar_one()
|
||||
assert stored_job.status.value == "skipped"
|
||||
|
||||
|
||||
def test_process_one_job_help_command_posts_summary(monkeypatch) -> None:
|
||||
posted_comments: list[str] = []
|
||||
session_factory = get_session_factory()
|
||||
with session_factory() as session:
|
||||
enqueue_job(
|
||||
session,
|
||||
repo="acme/repo",
|
||||
pr_number=12,
|
||||
head_sha="abc12345",
|
||||
trigger_comment_id=114,
|
||||
trigger_comment_body="@codex -h",
|
||||
requested_by="alice",
|
||||
command=ParsedCommand(name="help", raw="@codex -h"),
|
||||
)
|
||||
|
||||
class _FakeGiteaClient:
|
||||
def __init__(self, _settings) -> None:
|
||||
pass
|
||||
|
||||
def list_issue_comments(self, _repo: str, _pr_number: int):
|
||||
return [
|
||||
{"body": "Please check auth edge cases", "user": {"username": "alice"}},
|
||||
{"body": "On it, running review now.", "user": {"username": "codex-bot"}},
|
||||
]
|
||||
|
||||
def post_issue_comment(self, _repo: str, _pr_number: int, body: str) -> int:
|
||||
posted_comments.append(body)
|
||||
return 903
|
||||
|
||||
monkeypatch.setattr("gitea_codex_bot.workers.dispatcher.GiteaClient", _FakeGiteaClient)
|
||||
|
||||
assert process_one_job(get_settings()) is True
|
||||
assert posted_comments
|
||||
body = posted_comments[0]
|
||||
assert "## Codex Help" in body
|
||||
assert "@codex -h" in body
|
||||
assert "Discussion summary" in body
|
||||
assert "@alice: Please check auth edge cases" in body
|
||||
|
||||
Reference in New Issue
Block a user