Pass func refs
							parent
							
								
									0f8699a96a
								
							
						
					
					
						commit
						d6b16cabbe
					
				| 
						 | 
				
			
			@ -8,7 +8,9 @@ async def sleep_and_err():
 | 
			
		|||
    assert 0
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
async def trio_main():
 | 
			
		||||
async def asyncio_actor():
 | 
			
		||||
    assert tractor.current_actor().is_infected_aio()
 | 
			
		||||
 | 
			
		||||
    await tractor.to_asyncio.run_task(sleep_and_err)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -16,7 +18,7 @@ def test_infected_simple_error(arb_addr):
 | 
			
		|||
 | 
			
		||||
    async def main():
 | 
			
		||||
        async with tractor.open_nursery() as n:
 | 
			
		||||
            await n.run_in_actor('asyncio_actor', trio_main, infected_asyncio=True)
 | 
			
		||||
            await n.run_in_actor(asyncio_actor, infected_asyncio=True)
 | 
			
		||||
 | 
			
		||||
    with pytest.raises(tractor.RemoteActorError) as excinfo:
 | 
			
		||||
        tractor.run(main, arbiter_addr=arb_addr)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -164,16 +164,19 @@ def run_as_asyncio_guest(
 | 
			
		|||
    :)
 | 
			
		||||
    """
 | 
			
		||||
    async def aio_main(trio_main):
 | 
			
		||||
 | 
			
		||||
        loop = asyncio.get_running_loop()
 | 
			
		||||
 | 
			
		||||
        trio_done_fut = asyncio.Future()
 | 
			
		||||
 | 
			
		||||
        def trio_done_callback(main_outcome):
 | 
			
		||||
 | 
			
		||||
            log.info(f"trio_main finished: {main_outcome!r}")
 | 
			
		||||
            trio_done_fut.set_result(main_outcome)
 | 
			
		||||
 | 
			
		||||
        # start the infection: run trio on the asyncio loop in "guest mode"
 | 
			
		||||
        log.info(f"Infecting asyncio process with {trio_main}")
 | 
			
		||||
 | 
			
		||||
        trio.lowlevel.start_guest_run(
 | 
			
		||||
            trio_main,
 | 
			
		||||
            run_sync_soon_threadsafe=loop.call_soon_threadsafe,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue