File: callback.t

package info (click to toggle)
libevent-perl 1.11-1
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 712 kB
  • ctags: 593
  • sloc: ansic: 3,034; perl: 1,128; makefile: 50
file content (44 lines) | stat: -rw-r--r-- 864 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!./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;