activate GID and EGID after a case where it would have helped:
[cpan-testers-parsereport.git] / t / ctgr-live.t
blob87ea94e08409a5c0823de21f35b68724f1af29fd
1 #!perl -- -*- mode: cperl -*-
3 use strict;
4 BEGIN {
5     my $exit_message = "";
6     unless ($exit_message) {
7         if (!$ENV{AUTHOR_TEST}) {
8             $exit_message = "envariable AUTHOR_TEST not set";
9         }
10     }
11     if ($exit_message) {
12         $|=1;
13         print "1..0 # SKIP $exit_message\n";
14         eval "require POSIX; 1" and POSIX::_exit(0);
15     }
18 use File::Path qw(mkpath);
19 use Test::More;
20 use File::Spec;
21 use CPAN::Testers::ParseReport;
22 use List::Util qw(sum);
23 use Time::HiRes qw(time);
25 my $plan;
28     BEGIN { $plan += 1 }
29     mkpath "t/var-live";
30     my $system = qq{"$^X" "-Ilib" "bin/ctgetreports" "--prefer-local-reports" "--cachedir" "t/var-live" "--solve" "--verbose" "--transport" "http_cpantesters_gzip" "Scriptalicious-1.16" 2>&1};
31     diag "running system='$system'";
32     my $start = time;
33     open my $fh, "-|", $system or die "could not fork: $!";
34     my @reg;
35     while (<$fh>) {
36         push @reg, $1 if /^Regression '(.+)'/;
37     }
38     my $duration = time - $start;
39     @reg = sort @reg; # make it a bit less fragile
40     is "@reg",
41         "conf:archname conf:archname+osvers conf:ldflags",
42         "found the 'right' top 3 candidates in $duration seconds; (a very fragile test)";
45 unlink "ctgetreports.out";
47 BEGIN {
48       plan tests => $plan;
51 __END__
53 # Local Variables:
54 # mode: cperl
55 # cperl-indent-level: 4
56 # End: