#![ cfg(not( target_arch = "wasm32" )) ]
mod common;
use
{
common :: { import::*, actors::* } ,
async_executors :: { AsyncStd } ,
};
#[async_std::test]
async fn stop_when_addresses_dropped_before_start_mb() -> Result<(), DynError >
{
let (addr, mb) = Addr::builder( "dropped" ).build();
let addr2 = addr.clone();
drop( addr );
drop( addr2 );
let mb_handle = AsyncStd.spawn_handle( mb.start( Sum(5) ) )?;
mb_handle.await;
Ok(())
}
#[async_std::test]
async fn stop_when_addresses_dropped() -> Result<(), DynError >
{
let (mut addr, mb) = Addr::builder( "stop" ).build();
let mb_handle = AsyncStd.spawn_handle( mb.start( Sum(5) ) )?;
let addr2 = addr.clone();
addr.call( Add( 10 ) ).await?;
drop( addr );
drop( addr2 );
mb_handle.await;
Ok(())
}