Import of JROGERS/Net-Telnet-3.01 from CPAN.
[Net-Telnet.git] / t / select.t
blob4abd850282fc78de747630da96f4e0a9b0f6fa8c
1 #!./perl
3 use strict;
4 use lib '.';
5 use Net::Telnet ();
7 ## Global variables.
8 use vars qw($T);
10 ## Local variables.
11 my(
12    $count,
13    $test,
14    $tests,
15    $total,
16    );
18 ## Get the tests to run.
19 $tests = &init_tests();
21 ## Print total number of tests.
22 $total = @$tests;
23 print "1..$total\n";
25 ## Do each test.
26 $count = 1;
27 foreach $test (@$tests) {
28     if (&$test) {
29         print "ok $count\n";
30     }
31     else {
32         print "not ok $count\n";
33     }
35     $count++;
37         
38 exit;
41 sub init_tests {
42     [
43      sub {
44          my($nfound, $r);
46          ## Create a TCP socket.
47          use Socket qw(AF_INET SOCK_STREAM);
48          socket S, AF_INET, SOCK_STREAM, 0
49              or return;
51          ## Check for input on socket - it should return 0.
52          vec($r='', fileno(S), 1) = 1;
53          eval { $nfound = select($r, '', '', 0) };
55          ## Check for failure.
56          return if $@;
57          return unless defined($nfound) and $nfound == 0;
59          1;
60      },
61     ];