#!./perl -w use strict; use Test; plan tests => 6; use Event 0.65; my $invoked_method=0; sub method { ++$invoked_method; } my $main = bless []; Event->timer(after => 0, cb => \&method); Event->timer(after => 0, cb => ['main', 'method']); Event->timer(after => 0, cb => [$main, 'method']); { local $SIG{__WARN__} = sub { ok $_[0], '/nomethod/'; }; Event->timer(desc => 'nomethod', after => 0, cb => [$main, 'nomethod']); } eval { Event->timer(after => 0, cb => ['main']); }; ok $@, '/Callback/'; { local $Event::DIED = sub { my ($run,$err) = @_; ok $run->w->desc, 'nomethod'; ok $err, '/object method/'; }; local $SIG{__WARN__} = sub {}; Event::loop(); } { my $warn=''; local $SIG{__WARN__} = sub { $warn .= $_[0]; }; Event::loop(); ok $warn, '/loop without active watchers/'; } ok $invoked_method, 3;