from __future__ import annotations from gitea_codex_bot.services.review_format import format_result_comment def test_format_result_comment_uses_markdown_comment_verbatim_with_marker() -> None: body = format_result_comment( "abc1234", { "verdict": "correct", "confidence": 0.9, "summary": "ignored when markdown_comment exists", "findings": [], "markdown_comment": "## Codex Review\n\nAll good.\n\nNo issues found.", }, ) assert body.startswith("\n## Codex Review") assert "All good.\n\nNo issues found." in body def test_format_result_comment_replaces_existing_marker() -> None: body = format_result_comment( "def5678", { "markdown_comment": "\n## Codex Review\n\nText.", }, ) assert body.startswith("") assert "old" not in body.splitlines()[0] def test_format_result_comment_appends_usage_note_for_markdown_comment() -> None: body = format_result_comment( "ff0011", { "markdown_comment": "## Codex Review\n\nLooks fine.", "_meta": { "model": "gpt-5.3-codex", "usage": {"input_tokens": 120, "output_tokens": 45, "total_tokens": 165}, }, }, ) assert "_Note: model `gpt-5.3-codex`, input `120`, output `45`, total `165` tokens used._" in body def test_format_result_comment_appends_usage_note_for_fallback_layout() -> None: body = format_result_comment( "ff0011", { "verdict": "correct", "confidence": 0.8, "summary": "No issues.", "findings": [], "_meta": {"model": "gpt-5.3-codex", "usage": {"total_tokens": 88}}, }, ) assert body.endswith("_Note: model `gpt-5.3-codex`, total `88` tokens used._")