diff -r d6f681329542 -r 7ccc679ac5db examples/test-server --- a/examples/test-server Sun Jan 04 23:44:45 2009 +0100 +++ b/examples/test-server Mon Jan 05 21:44:56 2009 +0100 @@ -8,9 +8,64 @@ use warnings; use POSIX qw(tmpnam); use Getopt::Long; +use Pod::Usage; use Quancom::Test::Server; $SIG{INT} = sub { warn "got INT, exit now\n"; exit 0; }; +GetOptions( + "help" => sub { pod2usage(-verbose => 0, exit => 0) }, + "man" => sub { pod2usage(-verbose => 2, exit => 0) }, +) or pod2usage; + my $server = new Quancom::Test::Server @ARGV ? $ARGV[0] : tmpnam(); $server->run; + +__END__ + +=head1 NAME + +test-server + +=head1 SYNOPSIS + + test-server [socket|[address:]port|-] + +=head1 DESCRIPTION + +This command starts a test server simulating a Quancom USB-OPTO device. +It's use is for testing purpose only (testing the Quancom.pm module). + +=head1 INVOCATION + +On invocation you may pass a parameter: + +=over + +=item I + +This should be the name of a socket file. The socket file must not +exist, it will be created. The name has contain at least on slash ("/") +to be distinguished from a port number. + +=item [I]I + +Using this the server will bind to the specified port on 0.0.0.0 or the +address supplied. + +=item B<-> + +Using a single "-" the server will communicate over STDIN/STDOUT. Some +changes in behaviour are implicit set. See L for +more details. This option is for testing the test server. + +=item B + +If you do not pass anything, the server creates a temporary socket file. + +=back + +In all cases, the server tells you on STDERR about the "channel" used +for communication. + +=cut