| Test::UNIXSock(3pm) | User Contributed Perl Documentation | Test::UNIXSock(3pm) |
Test::UNIXSock - testing UNIX domain socket program
use Test::UNIXSock;
my $server = Test::UNIXSock->new(
code => sub {
my $path = shift;
...
},
);
my $client = MyClient->new( sock => $server->path );
undef $server; # kill child process on DESTROY
Using memcached:
use Test::UNIXSock;
my $memcached = Test::UNIXSock->new(
code => sub {
my $path = shift;
exec $bin, '-s' => $path;
die "cannot execute $bin: $!";
},
);
my $memd = Cache::Memcached->new({servers => [$memcached->path]});
...
And functional interface is available:
use Test::UNIXSock;
test_unix_sock(
client => sub {
my ($path, $server_pid) = @_;
# send request to the server
},
server => sub {
my $path = shift;
# run server
},
);
Test::UNIXSock is a test utility to test UNIX domain socket server programs.
This is based on Test::TCP.
test_unixsock(
client => sub {
my $path = shift;
# send request to the server
},
server => sub {
my $path = shift;
# run server
},
# optional
path => "/tmp/mytest.sock", # if not specified, create a sock in tmpdir
max_wait => 3, # seconds
);
wait_unix_sock({ path => $path });
Waits for a particular path is available for connect.
Arguments are following:
Default: true
This parameter is required.
See also Net::EmptyPort.
Default: 10
See also Test::TCP FAQ section.
Fujiwara Shunichiro <fujiwara.shunichiro@gmail.com>
Test::TCP
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
This module is based on Test::TCP. copyright (c) 2013 by Tokuhiro Matsuno <tokuhirom@gmail.com>.
| 2022-10-16 | perl v5.34.0 |