6 use Test
::More tests
=>4;
7 use POSIX
qw(:sys_wait_h :signal_h);
10 my $build = $ENV{BUILD
};
11 $build = ".." if (!defined($build));
12 my $rxperf = $build."/../src/tools/rxperf/rxperf";
14 # Start up an rxperf server
18 fail
("Failed to fork rxperf server");
22 "rxperf", "server", "-p", $port, "-u", "1024", "-H", "-N");
25 pass
("Started rxperf server");
27 # Start up an rxperf client, and run a test
29 system("$rxperf client -c rpc -p $port -S 1048576 -R 1048576 -T 30 -u 1024 -H -N"),
30 "single threaded client ran successfully");
33 system("$rxperf client -c rpc -p $port -S 1048576 -R 1048576 -T 1 -t 30 -u 1024 -H -N"),
34 "multi threaded client ran succesfully");
36 # Kill the server, and check its exit code
40 if (WIFSIGNALED
($?
) && WTERMSIG
($?
) != SIGTERM
) {
41 fail
("Server died with signal ".WTERMSIG
($?
));
42 } elsif (WIFEXITED
($?
) && WEXITSTATUS
($?
) != 0) {
43 fail
("Server exited with code". WEXITSTATUS
($?
));
45 pass
("Server exited succesfully");