Beam-Emitter
view release on metacpan or search on metacpan
t/unsubscribe_global_destruction.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use Test::Fatal;
use Beam::Emitter;
{
package MyEmitter;
use Moo; with 'Beam::Emitter';
}
my $emitter = MyEmitter->new;
my $unsubscribe = $emitter->on( ping => sub { } );
# simulate Global Destruction with $emitter destroyed first
undef $emitter;
ok !exception { $unsubscribe->() }, 'unsubscribe survived destroyed emitter';
done_testing;
( run in 1.642 second using v1.01-cache-2.11-cpan-54e63673c56 )