]> granicus.if.org Git - fortune-mod/blob - fortune-mod/run-tests.pl
Add fortune cookies to fortune-mod.
[fortune-mod] / fortune-mod / run-tests.pl
1 #!/usr/bin/env perl
2
3 use strict;
4 use warnings;
5
6 use File::Spec ();
7 use Getopt::Long qw/ GetOptions /;
8
9 my $src_dir;
10 my $cookies_list_str;
11 GetOptions(
12     'cookies=s' => \$cookies_list_str,
13     'src-dir=s' => \$src_dir,
14 ) or die "could not parse options - $!";
15
16 if ( !defined($src_dir) )
17 {
18     die "--src-dir was not defined";
19 }
20
21 local $ENV{SRC_DIR} = File::Spec->rel2abs($src_dir);
22 local $ENV{COOKIES} = $cookies_list_str;
23
24 my $IS_WIN = ( $^O eq "MSWin32" );
25
26 sub do_system
27 {
28     my ($args) = @_;
29
30     my $cmd = $args->{cmd};
31     print "Running [@$cmd]\n";
32     if ( system(@$cmd) )
33     {
34         die "Running [@$cmd] failed!";
35     }
36 }
37
38 do_system(
39     {
40         cmd => [ $^X, "$src_dir/tests/scripts/split-valgrind.pl", ]
41     }
42 );
43 do_system(
44     {
45         cmd => [
46             'prove', ( $IS_WIN ? ("-v") : () ), glob("$src_dir/tests/t/*.t")
47         ]
48     }
49 );