Fix RT #54203 (reported by chocolateboy) that setters might return undef.
[gitmo/Mouse.git] / author / test-externals.pl
1 #!perl -w
2 use strict;
3 use FindBin qw($Bin);
4 use autodie;
5
6 my %dist = (
7     'HTTP-Engine'  => q{git://github.com/http-engine/HTTP-Engine.git},
8     'HTTP-Engine-Middleware'
9                    => q{git://github.com/http-engine/HTTP-Engine-Middleware.git},
10
11     'Ark'          => q{git://github.com/typester/ark-perl.git},
12     'Object-Container'
13                     => q{git://github.com/typester/object-container-perl.git},
14
15     'MouseX-Types'  => q{git://github.com/yappo/p5-mousex-types.git},
16
17     'Data-Localize' => q{git://github.com/lestrrat/Data-Localize.git},
18
19     'MouseX-AttributeHelpers'
20                     => q{git://github.com/masaki/mousex-attributehelpers.git},
21
22     'HTML-Shakan'   => q{git://github.com/tokuhirom/html-shakan.git},
23 );
24
25 my $distdir = 'externals';
26
27 chdir $Bin;
28 mkdir $distdir if not -e $distdir;
29
30 $ENV{ANY_MOOSE} = 'Mouse';
31
32 while(my($name, $repo) = each %dist){
33     chdir "$Bin/$distdir";
34
35     print "Go $name ($repo)\n";
36
37     if(!(-e "$name")){
38         system "git clone $repo $name";
39         chdir $name;
40     }
41     else{
42         chdir $name;
43         system "git pull";
44     }
45
46     print "$^X Makefile.PL\n";
47     system("$^X Makefile.PL 2>&1 |tee ../$name.log");
48
49     print "make\n";
50     system("make 2>&1 >>../$name.log");
51
52     print "make test\n";
53     system("make test 2>&1 |tee -a ../$name.log")
54 }