reachy_mini_danceml / tests /test_startup.py
Boopster's picture
feat: Implement voice-controlled movement generation for Reachy Mini with real-time audio processing, new tests, and documentation.
c8edd3d
import asyncio
import os
import sys
# Mock Reachy libraries to avoid full robot connection
from unittest.mock import MagicMock
sys.modules["reachy_mini"] = MagicMock()
sys.modules["reachy_mini.utils"] = MagicMock()
sys.modules["reachy_mini.motion"] = MagicMock()
sys.modules["reachy_mini.motion.move"] = MagicMock()
sys.modules["reachy_mini.io"] = MagicMock()
sys.modules["reachy_mini.io.zenoh_client"] = MagicMock()
from reachy_mini_danceml.realtime_handler import RealtimeHandler
from reachy_mini_danceml.movement_generator import MovementGenerator
# Mock Generator
gen = MagicMock(spec=MovementGenerator)
async def test_startup():
print("Testing RealtimeHandler initialization...")
try:
handler = RealtimeHandler("fake-key", gen)
print("Handler created.")
print("Creating stream...")
# This calls run_until_complete internally
stream = handler.create_stream()
print("Stream created successfully.")
except Exception as e:
print(f"CRASH: {e}")
import traceback
traceback.print_exc()
if __name__ == "__main__":
try:
# Check if we can run the internal logic
handler = RealtimeHandler("fake-key", gen)
stream = handler.create_stream()
print("Sync execution success.")
except Exception as e:
print(f"Sync execution failed: {e}")