1 #!perl -- -*- mode: cperl -*-
6 use CPAN::Testers::ParseReport;
7 use List::Util qw(sum);
14 open my $fh, "<", qq{t/var/nntp-testers/1581994} or die "could not open: $!";
19 CPAN::Testers::ParseReport::parse_report(1234567, $dump, article => $article, solve => 1, quiet => 1);
20 my $keys = keys %{$dump->{"==DATA=="}[0]};
21 ok($keys >= 39, "found at least 39, actually [$keys] keys");
29 'q' => ["meta:perl", "meta:from", "qr:(Undefined.*)", "prereq:Test::More"],
31 'cachedir' => 't/var',
35 CPAN::Testers::ParseReport::parse_distro
40 my $Y = YAML::Syck::LoadFile("ctgetreports.out");
41 my $count = sum map {values %{$Y->{"meta:from"}{$_}}} keys %{$Y->{"meta:from"}};
42 is($count, 130, "found $count==130 reports via meta:from");
43 is($Y->{"meta:ok"}{PASS}{PASS}, 79, "found 79 PASS");
44 is($Y->{"prereq:Test::More"}{0}{PASS}, 70, "found 70 PASS on prereq Test::More==0");
45 ok(!$Y->{"env:alignbytes"}, "there is no such thing as an environment alignbytes");
46 my $undefined = $Y->{'qr:(Undefined.*)'};
47 my($the_warning) = grep {length} keys %$undefined;
48 ok($undefined,"found warning: '$the_warning'");
49 like($the_warning, qr/&main::/, "the ampersand is escaped");
57 'q' => ["meta:perl", "meta:from", "prereq:Test::More"],
59 'cachedir' => 't/var',
64 CPAN::Testers::ParseReport::parse_distro
69 my $Y = YAML::Syck::LoadFile("ctgetreports.out");
70 my $count = sum map {values %{$Y->{"meta:from"}{$_}}} keys %{$Y->{"meta:from"}};
71 is($count, 99, "found $count==99 reports via meta:from");
79 'q' => ["meta:perl", "meta:from", "prereq:Test::More"],
81 'cachedir' => 't/var',
86 CPAN::Testers::ParseReport::parse_distro
91 my $Y = YAML::Syck::LoadFile("ctgetreports.out");
92 my $count = sum map {values %{$Y->{"meta:from"}{$_}}} keys %{$Y->{"meta:from"}};
93 is($count, 130, "found $count==130 reports via meta:from");
101 'q' => ["meta:perl", "meta:from", "conf:git_commit_id", "env:PERL5_MINISMOKEBOX"],
103 'cachedir' => 't/var',
106 'report' => '3521214',
109 my $extract = CPAN::Testers::ParseReport::parse_report
111 "t/var/nntp-testers/3521214",
115 is $extract->{'conf:git_commit_id'}, '245490700bb744b58c708516d2d3c08f18583dc3', "found git commit id";
116 is $extract->{'env:AUTOMATED_TESTING'}, '1', "automated testing was set";
117 is $extract->{'meta:date'}, '2009-03-20T03:29:23', "date in iso format";
126 'q' => ["meta:perl", "meta:from", "mod:Storable", "env:AUTOMATED_TESTING"],
128 'cachedir' => 't/var',
134 my $extract = CPAN::Testers::ParseReport::parse_report
136 "t/var/nntp-testers/3851138",
140 like $extract->{'conf:archname'}, qr/64int/, "found 64int on archname";
141 is $extract->{'env:AUTOMATED_TESTING'}, '1', "automated testing was set";
142 is $extract->{'mod:Storable'}, '2.18', "Storable version";
143 is $extract->{'meta:date'}, '2009-05-10T01:39:11', "report $id: date";
152 'q' => ["conf:nvsize", "conf:uselongdouble"],
154 'cachedir' => 't/var',
160 my $extract = CPAN::Testers::ParseReport::parse_report
162 "t/var/nntp-testers/5698506",
166 is $extract->{'conf:nvsize'}, 16, "found 16 on nvsize";
167 is $extract->{'conf:uselongdouble'}, 'define', "found uselongdouble";
168 is $extract->{'mod:ExtUtils::MakeMaker'}, '6.55_02', "makemaker version";
169 is $extract->{'meta:date'}, '2009-10-21T17:30:27', "report $id: date";
178 'q' => ["conf:nvsize", "conf:uselongdouble"],
180 'cachedir' => 't/var',
186 my $extract = CPAN::Testers::ParseReport::parse_report
188 "t/var/nntp-testers/$id",
192 is $extract->{'conf:nvsize'}, 8, "found 8 on nvsize";
193 is $extract->{'conf:uselongdouble'}, 'undef', "found uselongdouble";
194 is $extract->{'mod:ExtUtils::MakeMaker'}, '6.54', "makemaker version";
195 is $extract->{'meta:date'}, '2009-08-14T20:18:57', "report $id: date";
200 open my $fh, "-|", qq{"$^X" "-Ilib" "bin/ctgetreports" "--local" "--cachedir" "t/var" "--solve" "--quiet" "Scriptalicious" 2>&1} or die "could not fork: $!";
203 push @reg, $1 if /^Regression '(.+)'/;
205 is "@reg", "meta:writer mod:Test::Harness id", "found the top 3 candidates";
209 # State after regression testing: 68 results, showing top 3
212 # ****************************************************************
213 # Regression 'mod:Test::Harness'
214 # ****************************************************************
215 # Name Theta StdErr T-stat
216 # [0='const'] 1.0000 0.1021 9.80
217 # [1='eq_2.64'] -0.3846 0.1328 -2.90
218 # [2='eq_3.09'] 0.0000 0.3228 0.00
219 # [3='eq_3.10'] -0.0200 0.1109 -0.18
220 # [4='eq_3.11'] -0.0000 0.2042 -0.00
221 # [5='eq_3.12'] -0.7143 0.1309 -5.46
222 # [6='eq_3.13'] -0.8696 0.1204 -7.22
223 # [7='eq_3.14'] -0.8667 0.1291 -6.71
225 # R^2= 0.628, N= 128, K= 8
226 # ****************************************************************
228 # ****************************************************************
230 # ****************************************************************
231 # Name Theta StdErr T-stat
232 # [0='const'] 2.4992 0.1514 16.51
233 # [1='n_id'] -0.0000 0.0000 -12.66
235 # R^2= 0.560, N= 128, K= 2
236 # ****************************************************************
238 # ****************************************************************
239 # Regression 'meta:date'
240 # ****************************************************************
241 # Name Theta StdErr T-stat
242 # [0='const'] 93.9116 7.3952 12.70
243 # [1='n_meta:date'] -0.0000 0.0000 -12.62
245 # R^2= 0.558, N= 128, K= 2
246 # ****************************************************************
250 # State after regression testing: 110 results, showing top 3
253 # ****************************************************************
254 # Regression 'meta:writer'
255 # ****************************************************************
256 # Name Theta StdErr T-stat
257 # [0='const'] 0.8929 0.0509 17.54
258 # [1='eq_CPAN-Reporter-1.1404'] 0.1071 0.0992 1.08
259 # [2='eq_CPAN-Reporter-1.15'] 0.1071 0.0720 1.49
260 # [3='eq_CPAN-Reporter-1.1556'] -0.8929 0.1440 -6.20
261 # [4='eq_CPAN-Reporter-1.16'] -0.8929 0.2741 -3.26
262 # [5='eq_CPAN-Reporter-1.1601'] -0.6929 0.1308 -5.30
263 # [6='eq_CPAN-Reporter-1.1651'] -0.7679 0.0844 -9.10
264 # [7='eq_CPAN-Reporter-1.17'] -0.6706 0.1032 -6.50
265 # [8='eq_CPAN-Reporter-1.1702'] -0.7817 0.0814 -9.61
266 # [9='eq_CPAN::YACSmoke 0.0307'] 0.1071 0.1032 1.04
268 # R^2= 0.717, N= 128, K= 10
269 # ****************************************************************
271 # ****************************************************************
272 # Regression 'mod:Test::Harness'
273 # ****************************************************************
274 # Name Theta StdErr T-stat
275 # [0='const'] 1.0000 0.1021 9.80
276 # [1='eq_2.64'] -0.3846 0.1328 -2.90
277 # [2='eq_3.09'] 0.0000 0.3228 0.00
278 # [3='eq_3.10'] -0.0200 0.1109 -0.18
279 # [4='eq_3.11'] -0.0000 0.2042 -0.00
280 # [5='eq_3.12'] -0.7143 0.1309 -5.46
281 # [6='eq_3.13'] -0.8696 0.1204 -7.22
282 # [7='eq_3.14'] -0.8667 0.1291 -6.71
284 # R^2= 0.628, N= 128, K= 8
285 # ****************************************************************
287 # ****************************************************************
289 # ****************************************************************
290 # Name Theta StdErr T-stat
291 # [0='const'] 2.4992 0.1514 16.51
292 # [1='n_id'] -0.0000 0.0000 -12.66
294 # R^2= 0.560, N= 128, K= 2
295 # ****************************************************************
306 'q' => ["conf:nvsize", "conf:uselongdouble"],
308 'cachedir' => 't/var',
314 my $extract = CPAN::Testers::ParseReport::parse_report
316 "t/var/nntp-testers/$id",
320 is $extract->{'conf:nvsize'}, 8, "report $id: found 8 on nvsize";
321 is $extract->{'conf:uselongdouble'}, 'undef', "report $id: found uselongdouble";
322 is $extract->{'mod:l module toolchain versions in'}, undef, "report $id: C:T:PR 0.1.6 had a bug against cpanplus 0.89_06";
323 is $extract->{'mod:CPANPLUS'}, '0.89_06', "report $id: CPANPLUS version";
324 is $extract->{'mod:Cwd'}, '3.2501', "report $id: Cwd version";
325 is $extract->{'mod:File::Spec'}, '3.2501', "report $id: File::Spec version";
326 is $extract->{'mod:version'}, '0.7701', "report $id: version version";
327 is $extract->{'mod:ExtUtils::MakeMaker'}, '6.54', "report $id: ExtUtils::MakeMaker version";
328 is $extract->{'meta:date'}, '2009-11-01T14:07:11', "report $id: date";
338 'cachedir' => 't/var',
344 my $extract = CPAN::Testers::ParseReport::parse_report
346 "t/var/nntp-testers/$id",
350 is $extract->{'mod:Catalyst::Plugin::Session::State::Cookie'}, "0.17", "report $id: C:P:S:S:C version";
351 is $extract->{'mod:Catalyst::Controller::ActionRole'}, "0.12", "report $id: C:C:AR mod version";
352 is $extract->{'prereq:Catalyst::Controller::ActionRole'}, "0.12", "report $id: C:C:AR prereq version";
353 is $extract->{'mod:Moose::Autobox'}, "0.10", "report $id: M:A mod version";
354 is $extract->{'prereq:Moose::Autobox'}, "0.09", "report $id: M:A prereq version";
355 is $extract->{'mod:CPANPLUS'}, '0.89_07', "report $id: CPANPLUS version";
356 is $extract->{'mod:Cwd'}, '3.30', "report $id: Cwd version";
357 is $extract->{'meta:date'}, '2009-11-08T14:48:26', "report $id: date";
367 'cachedir' => 't/var',
373 my $extract = CPAN::Testers::ParseReport::parse_report
375 "t/var/nntp-testers/$id",
379 is $extract->{'meta:date'}, '2008-09-02T18:05:00', "report $id: date";
389 'cachedir' => 't/var',
393 'q' => ['qr:(Failed test\s+\S+.*)'],
396 my $extract = CPAN::Testers::ParseReport::parse_report
398 "t/var/nntp-testers/$id",
402 is $extract->{'qr:(Failed test\s+\S+.*)'}, q{Failed test 'Pod coverage on App::Pm2Port'}, "report $id: qr...Failed test...";
412 'cachedir' => 't/var',
418 my $extract = CPAN::Testers::ParseReport::parse_report
420 "t/var/nntp-testers/$id",
424 is $extract->{'meta:perl'}, q{5.11.2}, "report $id: meta:perl";
434 'cachedir' => 't/var',
440 my $extract = CPAN::Testers::ParseReport::parse_report
442 "t/var/nntp-testers/$id",
446 is $extract->{'mod:Image::Imlib2'}, q{0}, "report $id: mod:Image::Imlib2";
456 'cachedir' => 't/var',
462 my $extract = CPAN::Testers::ParseReport::parse_report
464 "t/var/nntp-testers/$id",
468 is $extract->{'prereq:Module::Build'}, q{0.36}, "report $id: prereq:Module::Build";
469 is $extract->{'mod:Module::Build'}, q{0.36_13}, "report $id: mod:Module::Build";
472 unlink "ctgetreports.out";
482 # cperl-indent-level: 4