File size: 829 Bytes
7797763
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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