|
|
import asyncio |
|
|
from datetime import datetime, timezone |
|
|
from unittest.mock import MagicMock |
|
|
|
|
|
from reachy_mini_conversation_app.tools import ToolDependencies |
|
|
from reachy_mini_conversation_app.openai_realtime import OpenaiRealtimeHandler |
|
|
|
|
|
|
|
|
def _build_handler(loop: asyncio.AbstractEventLoop) -> OpenaiRealtimeHandler: |
|
|
asyncio.set_event_loop(loop) |
|
|
deps = ToolDependencies(reachy_mini=MagicMock(), movement_manager=MagicMock()) |
|
|
return OpenaiRealtimeHandler(deps) |
|
|
|
|
|
|
|
|
def test_format_timestamp_uses_wall_clock() -> None: |
|
|
"""Test that format_timestamp uses wall clock time.""" |
|
|
loop = asyncio.new_event_loop() |
|
|
try: |
|
|
print("Testing format_timestamp...") |
|
|
handler = _build_handler(loop) |
|
|
formatted = handler.format_timestamp() |
|
|
print(f"Formatted timestamp: {formatted}") |
|
|
finally: |
|
|
asyncio.set_event_loop(None) |
|
|
loop.close() |
|
|
|
|
|
|
|
|
year = int(formatted[1:5]) |
|
|
assert year == datetime.now(timezone.utc).year |
|
|
|