crossroads

Git mirror of https://crossroads.e-tunity.com/
git clone git://git.finwo.net/app/crossroads
Log | Files | Refs

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 }