X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=xt%2Ftest-my-dependents.t;h=d9c76e01f2779fbe73c8ff4543f4a198d472c434;hb=a665e0b1006314b925dea70b7c70e1f0893e6c61;hp=aaf53095acae6adf4139beddc351d2008ab1513b;hpb=a65d9c59b17e7a0a40aa534d3c73ec959df66598;p=gitmo%2FMoo.git diff --git a/xt/test-my-dependents.t b/xt/test-my-dependents.t index aaf5309..d9c76e0 100644 --- a/xt/test-my-dependents.t +++ b/xt/test-my-dependents.t @@ -1,6 +1,6 @@ use Test::More; BEGIN { - plan skip_all => <<'END_HELP' unless $ENV{MOO_TEST_MD}; + plan skip_all => <<'END_HELP' unless $ENV{MOO_TEST_MD} || @ARGV; This test will not run unless you set MOO_TEST_MD to a true value. Valid values are: @@ -68,7 +68,7 @@ for my $line () { my ( $dist, $reason ) = $line =~ /^(\S*)\s*(?:#\s*(.*?)\s*)?$/; next unless defined $dist && length $dist; - $hash->{$dist} = $reason || $sec_reason; + $hash->{$dist} = $reason ? "$sec_reason: $reason" : $reason; } my %todo_module; @@ -99,17 +99,22 @@ for my $hit (@{ $res->{hits}{hits} }) { } @modules = sort @modules; -if ( $ENV{MOO_TEST_MD} eq 'MooX' ) { +my @args = grep { $_ ne '--show' } @ARGV; +my $show = @args != @ARGV; +my $pick = $ENV{MOO_TEST_MD} || shift @args || 'all'; + +if ( $pick eq 'MooX' ) { @modules = grep /^MooX(?:$|::)/, @modules; } -elsif ( $ENV{MOO_TEST_MD} eq '1' ) { - diag(<<'EOF'); - Picking 200 random dependents to test. Set MOO_TEST_MD=all to test all +elsif ( $pick =~ /^\d+$/ ) { + my $count = $pick == 1 ? 200 : $pick; + diag(<<"EOF"); + Picking $count random dependents to test. Set MOO_TEST_MD=all to test all dependents or MOO_TEST_MD=MooX to test extension modules only. EOF - @modules = (List::Util::shuffle(@modules))[0..199]; + @modules = (List::Util::shuffle(@modules))[0 .. $count-1]; } -elsif ( $ENV{MOO_TEST_MD} ne 'all' ) { +elsif ( $pick ne 'all' ) { my @chosen = split /,/, $ENV{MOO_TEST_MD}; my %modules = map { $_ => 1 } @modules; if (my @unknown = grep { !$modules{$_} } @chosen) { @@ -118,7 +123,7 @@ elsif ( $ENV{MOO_TEST_MD} ne 'all' ) { @modules = @chosen; } -if (grep { $_ eq '--show' } @ARGV) { +if ($show) { print "Dependents:\n"; print " $_\n" for @modules; exit; @@ -135,44 +140,82 @@ for my $module (@modules) { __DATA__ # SKIP: no tests +AnyMerchant CPAN-Mirror-Finder Catmandu-AlephX Device-Hue Novel-Robot Novel-Robot-Browser Novel-Robot-Parser +Novel-Robot-Packer Thrift-API-HiveClient Tiezi-Robot-Parser +Tiezi-Robot-Packer +WWW-ORCID -# SKIP: broken +# TODO: broken App-Presto Catmandu-Store-Lucy Dancer2-Session-Sereal +Dancer-Plugin-FontSubset Data-Localize +DBIx-Class-IndexSearch-Dezi +DBIx-FixtureLoader Message-Passing-ZeroMQ Tak -# SKIP: broken tests +# TODO: broken by perl 5.18 +App-DBCritic # 0.020 - smartmatch +App-OS-Detect-MachineCores # 0.038 - smartmatch +Authen-HTTP-Signature # 0.02 - smartmatch +DBICx-Backend-Move # 1.000010 - smartmatch +POEx-ZMQ3 # 0.060002 - smartmatch +Ruby-VersionManager # 0.004003 - smartmatch +Text-Keywords # 0.900 - smartmatch +Data-CloudWeights # v0.9.2 +HTML-Zoom-Parser-HH5P # 0.002 +Log-Message-Structured-Stringify-AsSereal # 0.10 + +# TODO: broken prereqs +App-Netdisco +DBIx-Table-TestDataGenerator +Perinci-CmdLine +Perinci-Sub-Gen-AccessTable-DBI + +# TODO: broken prereqs (perl 5.18) +App-Rssfilter # 0.03 - Data::Alias +App-Zapzi # 0.004 - HTTP::CookieJar +Code-Crypt # 0.001000 - Crypt::DES +Data-Sah # 0.15 - Regexp::Grammars +Language-Expr # 0.19 - Regexp::Grammars +Net-Icecast2 # 0.005 - PHP::HTTPBuildQuery (hash order) +Org-To-HTML # 0.07 - Language::Expr +POE-Component-ProcTerminator # 0.03 - Log::Fu +Perinci-Access-Simple-Server # 0.12 - Regexp::Grammars +Perinci-Sub-Gen-AccessTable # 0.19 - Regexp::Grammars +Software-Release-Watch # 0.01 - Data::Sah, Perinci::CmdLine +Software-Release-Watch-SW-wordpress # 0.01 - Software::Release::Watch +Tiezi-Robot # 0.12 - Data::Dump::Streamer, SOAP::Lite +WebService-HabitRPG # 0.19 - Data::Alias + +# TODO: broken tests Template-Flute Uninets-Check-Modules-HTTP Uninets-Check-Modules-MongoDB Uninets-Check-Modules-Redis +Net-OAuth-LP # pod coverage -# SKIP: missing prereqs -Catmandu-Z3950 -Tiezi-Robot - -# SKIP: bad prereq version listed -Dancer2-Session-Cookie -Dancer2-Session-JSON - -# TODO: broken, pending release -Hg-Lib -P9Y-ProcessTable +# SKIP: invalid prereqs +Catmandu-Z3950 # 0.03 - ZOOM missing +Dancer2-Session-JSON # 0.001 - Dancer2 bad version requirement -# SKIP: OS specific -Linux-AtaSmart +# SKIP: misc +Linux-AtaSmart # OS specific +Net-Works # 0.12 - prereq Math::Int128 (requires gcc 4.4) +XML-GrammarBase # v0.2.2 - prereq XML::LibXSLT (hard to install) +Forecast-IO # 0.21 - interactive tests # TODO: broken by Moo change Math-Rational-Approx # RT#84035 App-Services # RT#85255 +Hg-Lib # pending release