Evented-Object
view release on metacpan or search on metacpan
t/01priorities.t view on Meta::CPAN
#!/usr/bin/perl
use strict;
use warnings;
use Test::More;
use Evented::Object;
# tests basic priorities
my @results;
my $eo = Evented::Object->new;
# add several callbacks which push numbers to @results
$eo->register_callback(hi => sub {
push @results, 100;
}, priority => 100);
$eo->register_callback(hi => sub {
push @results, 200;
}, priority => 200);
$eo->register_callback(hi => sub {
push @results, -5;
}, priority => -5);
$eo->register_callback(hi => sub {
push @results, 0;
});
# fire the event
$eo->fire_event('hi');
# check that things were pushed in the correct order
is($results[0], 200, '200 priority should be called first');
is($results[1], 100, '100 priority should be called second');
is($results[2], 0, '0 priority should be called third');
is($results[3], -5, '-5 priority should be called fourth');
done_testing;
( run in 0.719 second using v1.01-cache-2.11-cpan-39bf76dae61 )