55import asyncio
66import base64
77import contextlib
8- from unittest .mock import AsyncMock , MagicMock , patch
98
109import pytest
1110
1615 pair_memory_transports ,
1716)
1817from arcp ._errors import InvalidRequestError
19- from arcp ._messages .execution import Lease
2018from arcp ._runtime .result_stream import ResultStream
2119from arcp .client import ARCPClient
2220from arcp .runtime import ARCPRuntime , StaticBearerVerifier
@@ -59,15 +57,15 @@ async def test_result_stream_write_str_utf8() -> None:
5957 """ResultStream.write with str data sends a result_chunk event."""
6058 rt = _make_rt ()
6159 server_t , client_t = pair_memory_transports ()
62- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
60+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
6361
6462 stream = job_ctx .stream_result ()
6563 await stream .write ("hello world" )
6664
6765 # Verify chunk_seq incremented and stream is not closed
6866 assert stream ._chunk_seq == 1
6967 assert not stream ._closed
70- assert stream ._total_size == len ("hello world" . encode ( "utf-8" ) )
68+ assert stream ._total_size == len (b "hello world" )
7169
7270 await client .close ()
7371 accept_task .cancel ()
@@ -80,7 +78,7 @@ async def test_result_stream_write_bytes_base64() -> None:
8078 """ResultStream.write with bytes data encodes as base64."""
8179 rt = _make_rt ()
8280 server_t , client_t = pair_memory_transports ()
83- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
81+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
8482
8583 raw = b"\x00 \x01 \x02 \x03 "
8684 stream = job_ctx .stream_result ()
@@ -102,7 +100,7 @@ async def test_result_stream_write_after_close_raises() -> None:
102100 """Writing to a closed ResultStream raises InvalidRequestError."""
103101 rt = _make_rt ()
104102 server_t , client_t = pair_memory_transports ()
105- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
103+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
106104
107105 stream = job_ctx .stream_result ()
108106 await stream .close ()
@@ -121,7 +119,7 @@ async def test_result_stream_close_idempotent() -> None:
121119 """Closing a ResultStream twice is a no-op (no exception)."""
122120 rt = _make_rt ()
123121 server_t , client_t = pair_memory_transports ()
124- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
122+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
125123
126124 stream = job_ctx .stream_result ()
127125 await stream .close ()
@@ -141,7 +139,7 @@ async def test_result_stream_context_manager_closes() -> None:
141139 """Using ResultStream as async context manager auto-closes on exit."""
142140 rt = _make_rt ()
143141 server_t , client_t = pair_memory_transports ()
144- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
142+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
145143
146144 async with job_ctx .stream_result () as stream :
147145 await stream .write ("piece one" )
@@ -160,7 +158,7 @@ async def test_result_stream_context_manager_handles_exception() -> None:
160158 """ResultStream context manager closes even when an exception occurs inside."""
161159 rt = _make_rt ()
162160 server_t , client_t = pair_memory_transports ()
163- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
161+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
164162
165163 stream_ref : list [ResultStream ] = []
166164
@@ -186,7 +184,7 @@ async def test_result_stream_close_with_summary() -> None:
186184 """ResultStream.close accepts an optional summary string."""
187185 rt = _make_rt ()
188186 server_t , client_t = pair_memory_transports ()
189- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
187+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
190188
191189 stream = job_ctx .stream_result ()
192190 await stream .write ("chunk data" )
@@ -205,7 +203,7 @@ async def test_result_stream_result_id_property() -> None:
205203 """ResultStream exposes its result_id via the result_id property."""
206204 rt = _make_rt ()
207205 server_t , client_t = pair_memory_transports ()
208- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
206+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
209207
210208 stream = job_ctx .stream_result (result_id = "my-result-123" )
211209 assert stream .result_id == "my-result-123"
@@ -221,12 +219,12 @@ async def test_result_stream_multiple_chunks_accumulate_size() -> None:
221219 """Writing multiple chunks accumulates total_size correctly."""
222220 rt = _make_rt ()
223221 server_t , client_t = pair_memory_transports ()
224- client , accept_task , job_ctx , handle = await _make_job_context (rt , server_t , client_t )
222+ client , accept_task , job_ctx , _handle = await _make_job_context (rt , server_t , client_t )
225223
226224 stream = job_ctx .stream_result ()
227225 await stream .write ("abc" ) # 3 bytes
228- await stream .write ("de" ) # 2 bytes
229- await stream .write ("f" ) # 1 byte
226+ await stream .write ("de" ) # 2 bytes
227+ await stream .write ("f" ) # 1 byte
230228 assert stream ._chunk_seq == 3
231229 assert stream ._total_size == 6
232230
0 commit comments