import pytest from space.contracts import ProviderSelection from space.runtime import _fixture_builder, create_runtime_session @pytest.mark.asyncio async def test_bonsai_prompt_allows_zero_gpu_model_startup(monkeypatch: pytest.MonkeyPatch) -> None: session = create_runtime_session( ProviderSelection(provider="bonsai", session_key=None), builder=_fixture_builder, ) observed: list[float] = [] wait_for_idle = session.manager.wait_for_idle async def record_timeout(*, timeout: float = 5) -> None: observed.append(timeout) await wait_for_idle(timeout=timeout) monkeypatch.setattr(session.manager, "wait_for_idle", record_timeout) try: await session._prompt("test bonsai startup") finally: await session._close() assert observed[0] == 120.0