| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- #!/usr/bin/perl -w
- use strict;
- use Test;
- use vars qw($dir $file $prog $idx $state $output %progs @dirs);
- my $tests = 0;
- @dirs = qw(plugins plugins-scripts);
- foreach $dir (@dirs) {
- opendir(DIR, $dir) || die "can't opendir $dir: $!";
- while ($file = readdir(DIR)) {
- if (-x "$dir/$file" && -f "$dir/$file") {
- $tests++;
- $progs{"$dir/$file"} = $file;
- }
- }
- closedir DIR;
- }
- plan tests => $tests;
- for $prog (keys %progs) {
- $state = 0;
- $file = `basename $prog`;
- $idx = 1;
- $output = `$prog -h 2>&1`;
- if($?) {$state++;print "$prog failed test $idx\n";}
- unless ($output =~ m/$progs{$prog}/ms) {
- $idx++; $state++;print "$output\n$prog failed test $idx\n";
- }
- $idx++;
- `$prog --help 2>&1 > /dev/null`;
- if($?) {$state++;print "$prog failed test $idx\n";}
- $idx++;
- `$prog -V 2>&1 > /dev/null`;
- if($?) {$state++;print "$prog failed test $idx\n";}
- $idx++;
- `$prog --version 2>&1 > /dev/null`;
- if($?) {$state++;print "$prog failed test $idx\n";}
- print "$prog ($idx tests) ";
- ok $state,0;
- }
|