New-space-openenv / plugins /tests /test_format_helpers.py
Mooizz's picture
Upload folder using huggingface_hub
1070765 verified
"""Tests for format helpers from shared models."""
from __future__ import annotations
import pytest
from watchdog_env.models import AgentTurn, format_conversation, format_current_turn
def test_format_conversation_empty():
"""Empty turns returns conversation start."""
result = format_conversation([])
assert "[Conversation start]" in result
def test_format_conversation_with_display_name():
"""Turns with display_name are formatted correctly."""
turns = [
AgentTurn(agent_id="P1", action_text="Hello", display_name="[P1] Alice"),
AgentTurn(agent_id="P2", action_text="Hi there", display_name="[P2] Bob"),
]
result = format_conversation(turns)
assert "[Turn 1]" in result
assert "[P1] Alice" in result
assert "Hello" in result
assert "[Turn 2]" in result
assert "[P2] Bob" in result
assert "Hi there" in result
def test_format_conversation_fallback_to_agent_id():
"""When display_name is empty, agent_id is used."""
turns = [AgentTurn(agent_id="P1", action_text="Hello", display_name="")]
result = format_conversation(turns)
assert "P1" in result
assert "Hello" in result
def test_format_current_turn_with_moderator():
"""Moderator prompt is included when present."""
turn = AgentTurn(
agent_id="P1",
action_text="I think P2 is suspicious.",
display_name="[P1] Alice",
moderator_prompt="Day 1 begins. What do you say?",
)
result = format_current_turn(turn, moderator_prompt=turn.moderator_prompt)
assert "[Moderator]" in result
assert "Day 1 begins" in result
assert "[P1] Alice" in result or "Alice" in result
assert "I think P2 is suspicious" in result
def test_format_current_turn_without_moderator():
"""Without moderator, only agent and action_text."""
turn = AgentTurn(
agent_id="England",
action_text="We should coordinate.",
display_name="England",
)
result = format_current_turn(turn, moderator_prompt="")
assert "[England]" in result
assert "We should coordinate" in result
assert "[Moderator]" not in result