AnyEvent-Ident
view release on metacpan or search on metacpan
t/alt_res_class.t view on Meta::CPAN
use strict;
use warnings;
use Test::More tests => 7;
use AnyEvent::Ident::Client;
use AnyEvent::Ident::Server;
our $timeout = AnyEvent->timer(
after => 10,
cb => sub { diag "TIMEOUT"; exit },
);
my $bindport = AnyEvent->condvar;
my $server = eval { AnyEvent::Ident::Server->new(
hostname => '127.0.0.1', port => 0, on_bind => sub { $bindport->send(shift->bindport) },
) };
diag $@ if $@;
t/alt_res_class.t view on Meta::CPAN
eval {
$server->start(sub {
shift->reply_with_user('UNIX','grimlock');
});
};
diag $@ if $@;
like $bindport->recv, qr/^[1-9]\d*$/, 'bind port = ' . $server->bindport;
my $w = AnyEvent->timer( after => 5, cb => sub { diag 'TIMEOUT'; exit });
my $done = AnyEvent->condvar;
my $client = AnyEvent::Ident::Client->new(
hostname => '127.0.0.1',
port => $server->bindport,
response_class => 'Foo::Bar::Baz',
)->ident(1,2, sub {
my $res = shift;
use strict;
use warnings;
use Test::More tests => 25;
use AnyEvent::Ident::Client;
use AnyEvent::Ident::Server;
our $timeout = AnyEvent->timer(
after => 10,
cb => sub { diag "TIMEOUT"; exit },
);
my $bind;
my $server = eval { AnyEvent::Ident::Server->new( hostname => '127.0.0.1', port => 0, on_bind => sub { $bind->send } ) };
isa_ok $server, 'AnyEvent::Ident::Server';
eval {
$bind = AnyEvent->condvar;
{
$tx->reply_with_error('NO-USER');
}
});
$bind->recv;
};
diag $@ if $@;
like $server->bindport, qr/^[123456789]\d*$/, "bind port = " . $server->bindport;
my $w = AnyEvent->timer( after => 5, cb => sub { diag "TIMEOUT"; exit } );
my $client = AnyEvent::Ident::Client->new( hostname => '127.0.0.1', port => $server->bindport );
do {
my $done = AnyEvent->condvar;
my $res;
$client->ident(400, 500, sub {
$res = shift;
use strict;
use warnings;
use Test::More tests => 11;
use AnyEvent;
use AnyEvent::Ident qw( ident_server ident_client );
our $timeout = AnyEvent->timer(
after => 10,
cb => sub { diag "TIMEOUT"; exit },
);
my $bindport = eval {
my $bind = AnyEvent->condvar;
ident_server '127.0.0.1', 0, sub {
my $tx = shift;
if($tx->req->server_port == 400
&& $tx->req->client_port == 500)
else
{
$tx->reply_with_error('NO-USER');
}
}, { on_bind => sub { $bind->send(shift) } };
$bind->recv->bindport;
};
like $bindport, qr/^[123456789]\d*$/, "bind port = " . $bindport;
my $w = AnyEvent->timer( after => 5, cb => sub { diag "TIMEOUT"; exit } );
do {
my $done = AnyEvent->condvar;
my $res;
ident_client '127.0.0.1', $bindport, 400, 500, sub {
$res = shift;
$done->send;
};
( run in 0.961 second using v1.01-cache-2.11-cpan-49f99fa48dc )