3b55bdff0e
Per user direction: use a real provider instead of mocks. The 10 sim tests that previously set current_provider='gemini_cli' + gcli_path to tests/mock_gemini_cli.py now set: current_provider='minimax' current_model='MiniMax-M2.7' Removed the gcli_path setters (no longer needed). Updated comments that mentioned 'Use gemini_cli with the mock script'. Updated test_sim_ai_settings.py provider mock to minimax. tests/mock_gemini_cli.py + mock_gcli.bat retained as a backstop (no longer used by any current test). tests/test_cli_tool_bridge*.py GEMINI_CLI_HOOK_CONTEXT references retained (meta-tooling, separate).
51 lines
1.2 KiB
Python
51 lines
1.2 KiB
Python
import pytest
|
|
import time
|
|
import sys
|
|
import os
|
|
|
|
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..")))
|
|
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "src")))
|
|
|
|
from src import api_hook_client
|
|
|
|
|
|
@pytest.mark.integration
|
|
def test_mma_epic_lifecycle(live_gui) -> None:
|
|
client = api_hook_client.ApiHookClient()
|
|
assert client.wait_for_server(timeout=15)
|
|
|
|
# Reset
|
|
client.click("btn_reset")
|
|
time.sleep(2)
|
|
|
|
# Set provider and path
|
|
client.set_value("current_provider", "minimax")
|
|
client.set_value("current_model", "MiniMax-M2.7")
|
|
time.sleep(2)
|
|
mock_path = os.path.abspath("tests/mock_gemini_cli.py")
|
|
time.sleep(2)
|
|
|
|
# Set epic and click
|
|
client.set_value("mma_epic_input", "Add timestamps")
|
|
time.sleep(1)
|
|
client.click("btn_mma_plan_epic")
|
|
|
|
# Wait and check
|
|
for i in range(30):
|
|
time.sleep(1)
|
|
status = client.get_mma_status()
|
|
proposed = status.get("proposed_tracks", [])
|
|
usage = status.get("mma_tier_usage", {})
|
|
t1 = usage.get("Tier 1", {})
|
|
|
|
print(
|
|
f"[{i}] Tier1: in={t1.get('input')}, out={t1.get('output')}, proposed={len(proposed)}",
|
|
flush=True,
|
|
)
|
|
|
|
if proposed:
|
|
print(f"SUCCESS: {proposed}", flush=True)
|
|
break
|
|
|
|
assert len(proposed) > 0, f"No tracks: {proposed}"
|