runtest (1307B)
1 #!/usr/bin/perl 2 3 use strict; 4 5 my $tests = <<'ENDTEST'; 6 ../src/crossroads -c t1.conf start 7 ./server 12 10000 & 8 ./client 200 localhost 10001 9 sleep 5 10 ../src/crossroads -c t1.conf status 11 ../src/crossroads -c t1.conf stop 12 13 ../src/crossroads -c t2.conf start 14 ./server 12 10000 & 15 ./client 200 localhost 10001 16 sleep 5 17 ../src/crossroads -c t2.conf status 18 ../src/crossroads -c t2.conf stop 19 20 ../src/crossroads -c t3.conf start 21 time ssh -p23 root@localhost; true 22 ../src/crossroads -c t3.conf status 23 ../src/crossroads -c t3.conf stop 24 25 ../src/crossroads -c t4.conf start 26 ./server 12 10000 & 27 ./client 200 localhost 10001 28 sleep 5 29 ../src/crossroads -c t4.conf status 30 ../src/crossroads -c t4.conf stop 31 32 ../src/crossroads -c t6.conf start 33 ./server 12 10000 & 34 ./client 200 localhost 10001 35 sleep 5 36 ../src/crossroads -c t6.conf status 37 ../src/crossroads -c t6.conf stop 38 39 ENDTEST 40 41 sub runtest { 42 for my $cmd (@_) { 43 $cmd =~ s/^ *//; 44 print STDERR ("runtest: [$cmd]\n"); 45 system ($cmd) and die ("runtest: [$cmd] has failed\n"); 46 } 47 print ("Press ENTER for next test\n"); 48 <STDIN>; 49 } 50 51 # Main 52 my @cmds = (); 53 for my $s (split (/\n/, $tests)) { 54 if ($s ne '') { 55 push (@cmds, $s); 56 } else { 57 if ($#cmds > -1) { 58 runtest (@cmds); 59 @cmds = (); 60 } 61 } 62 }