@@ -198,6 +198,15 @@ async def fetch_and_compare_all_records(
198198 if limit is None :
199199 assert result ._closed
200200 elif method == "next" :
201+ n = len (expected_records ) if limit is None else limit
202+ for _ in range (n ):
203+ record = await AsyncUtil .next (result )
204+ received_records .append ([record .get (key , None )])
205+ if limit is None :
206+ with pytest .raises (StopAsyncIteration ):
207+ await AsyncUtil .next (result )
208+ assert result ._closed
209+ elif method == "one iter" :
201210 iter_ = AsyncUtil .iter (result )
202211 n = len (expected_records ) if limit is None else limit
203212 for _ in range (n ):
@@ -223,7 +232,8 @@ async def fetch_and_compare_all_records(
223232 assert received_records == expected_records
224233
225234
226- @pytest .mark .parametrize ("method" , ("for loop" , "next" , "new iter" ))
235+ @pytest .mark .parametrize ("method" ,
236+ ("for loop" , "next" , "one iter" , "new iter" ))
227237@pytest .mark .parametrize ("records" , (
228238 [],
229239 [[42 ]],
@@ -237,7 +247,8 @@ async def test_result_iteration(method, records):
237247 await fetch_and_compare_all_records (result , "x" , records , method )
238248
239249
240- @pytest .mark .parametrize ("method" , ("for loop" , "next" , "new iter" ))
250+ @pytest .mark .parametrize ("method" ,
251+ ("for loop" , "next" , "one iter" , "new iter" ))
241252@pytest .mark .parametrize ("invert_fetch" , (True , False ))
242253@mark_async_test
243254async def test_parallel_result_iteration (method , invert_fetch ):
@@ -266,7 +277,8 @@ async def test_parallel_result_iteration(method, invert_fetch):
266277 )
267278
268279
269- @pytest .mark .parametrize ("method" , ("for loop" , "next" , "new iter" ))
280+ @pytest .mark .parametrize ("method" ,
281+ ("for loop" , "next" , "one iter" , "new iter" ))
270282@pytest .mark .parametrize ("invert_fetch" , (True , False ))
271283@mark_async_test
272284async def test_interwoven_result_iteration (method , invert_fetch ):
0 commit comments