better test-my-dependents script (needs work still)
[gitmo/Moose.git] / xt / author / test-my-dependents.t
CommitLineData
f81522ba 1use strict;
2use warnings;
3
4use Cwd qw( abs_path );
5use Test::More;
6
52c21688 7BEGIN {
8 plan skip_all => 'This test will not run unless you set MOOSE_TEST_MD to a true value'
9 unless $ENV{MOOSE_TEST_MD};
10}
f81522ba 11
4d438a84 12use Test::Requires {
03fd72d0 13 'Test::DependentModules' => '0.09', # skip all if not installed
479647ca 14 'MetaCPAN::API' => '0.33',
4d438a84 15};
dd36d4e9 16use Test::DependentModules qw( test_all_dependents test_modules );
f81522ba 17
7028866a 18use DateTime;
479647ca 19use List::MoreUtils qw(any);
7028866a 20use Moose ();
7028866a 21
41a0b2a9 22diag( 'Test run performed at: '
23 . DateTime->now
479647ca 24 . ' with Moose '
41a0b2a9 25 . Moose->VERSION );
7028866a 26
f81522ba 27$ENV{PERL_TEST_DM_LOG_DIR} = abs_path('.');
e2f01bb9 28delete @ENV{ qw( AUTHOR_TESTING RELEASE_TESTING SMOKE_TESTING ) };
f81522ba 29
479647ca 30my $mcpan = MetaCPAN::API->new;
31my $res = $mcpan->post(
32 '/release/_search' => {
33 query => { match_all => {} },
34 size => 5000,
35 filter => { and => [
36 { or => [
37 { term => { 'release.dependency.module' => 'Moose' } },
38 { term => { 'release.dependency.module' => 'Moose::Role' } },
39 { term => { 'release.dependency.module' => 'Moose::Exporter' } },
40 { term => { 'release.dependency.module' => 'Class::MOP' } },
41 { term => { 'release.dependency.module' => 'MooseX::Role::Parameterized' } },
42 ] },
43 { term => { 'release.status' => 'latest' } },
44 { term => { 'release.maturity' => 'released' } },
45 ] },
46 fields => 'distribution'
47 }
48);
f81522ba 49
479647ca 50my %skip = map { $_ => 1 } grep { /\w/ } map { chomp; s/\s*#.*$//; $_ } <DATA>;
51my @skip_prefix = qw(Acme Task Bundle);
52my %name_fix = (
53 'App-PipeFilter' => 'App::PipeFilter::Generic',
54 'Constructible' => 'Constructible::Maxima',
55 'DCOLLINS-ANN-Locals' => 'DCOLLINS::ANN::Robot',
56 'Dist-Zilla-Deb' => 'Dist::Zilla::Plugin::Deb::VersionFromChangelog',
57 'Dist-Zilla-Plugin-TemplateFile' => 'Dist::Zilla::Plugin::TemplateFiles',
58 'Dist-Zilla-Plugins-CJM' => 'Dist::Zilla::Plugin::TemplateCJM',
59 'OWL-Simple' => 'OWL::Simple::Class',
60 'Patterns-ChainOfResponsibility' => 'Patterns::ChainOfResponsibility::Application',
61 'Role-Identifiable' => 'Role::Identifiable::HasIdent',
62 'X11-XCB' => 'X11::XCB::Connection',
63 'XML-Ant-BuildFile' => 'XML::Ant::BuildFile::Project',
64 'helm' => 'Helm',
65 'marc-moose' => 'MARC::Moose',
66 'mobirc' => 'App::Mobirc',
67 'smokebrew' => 'App::SmokeBrew',
68 'v6-alpha' => 'v6',
69);
70my @modules = map { exists $name_fix{$_} ? $name_fix{$_} : $_ }
71 sort
72 grep { !$skip{$_} }
73 grep { my $dist = $_; !any { $dist =~ /^$_-/ } @skip_prefix }
74 map { $_->{fields}{distribution} }
75 @{ $res->{hits}{hits} };
76
77plan tests => scalar @modules;
78test_modules(@modules);
c5e3151e 79
734e40ed 80# Modules that are known to fail
81# PRANG - failing for quite some time (since before 2.0400)
82
c5e3151e 83__DATA__
479647ca 84# notes:
85# need Archive::Zip, or .zip dists won't be able to be installed
86
87# won't build, for actual reasons:
88App-CPAN2Pkg # Tk doesn't compile
89App-Fotagger # Imager doesn't compile
90Black-Board # not found on cpan because of mxd
91CM-Permutation # OpenGL uses graphics in Makefile.PL
92Dackup # depends on running ssh
93Date-Biorhythm # Date::Business prompts in Makefile.PL
94Data-Collector # depends on running ssh
95POE-Component-OpenSSH # depends on running ssh
96Perl-Dist-Strawberry-BuildPerl-5123 # windows only
97Perl-Dist-WiX # windows only
98Perl-Dist-WiX-BuildPerl-5123 # windows only
99Test-SFTP # Term::ReadPassword prompts in tests
100VirtualBox-Manage # not found on cpan because of mxd
101helm # depends on running ssh
102
103# won't build, for unknown reasons
104App-HistHub # ???
105App-Twitch # ???
106CPAN-Patches # ???
107CPAN-Patches-Plugin-Debian # ???
108Debian-Apt-PM # ???
109Dist-Zilla-Plugin-BuildSelf # ???
110Dist-Zilla-Plugin-ModuleBuildTiny # ???
111Lingua-TreeTagger # ???
112POE-Component-CPAN-Mirror-Multiplexer # ???
113POE-Component-Client-CouchDB # ???
114POE-Component-Github # ???
115POE-Component-Metabase-Relay-Server # ???
116POE-Component-Server-SimpleHTTP-PreFork # ???
117Tapper-Testplan # ??? (hangs)
118Test-Daily # ???
119WWW-Alltop # ???
120WWW-Hashdb # ??? (hangs, pegging cpu)
121WebService-Async # ??? (hangs, pegging cpu)
122WebService-LOC-CongRec # ???
123Zucchini # ??? (hangs)
124
125# not in cpan index for some reason
126Dist-Zilla-Plugin-Test-DistManifest # not found on cpan (?)
127Dist-Zilla-Plugin-Test-MinimumVersion # not found on cpan (?)
128Dist-Zilla-Plugin-Test-Portability # not found on cpan (?)
129Dist-Zilla-Plugin-Test-Synopsis # not found on cpan (?)
130Dist-Zilla-Plugin-Test-UnusedVars # not found on cpan (?)
131Hopkins # not found on cpan (?)
132PostScript-Barcode # not found on cpan (?)
133
134# failing for some reason or another (need to look into this)
135AI-ExpertSystem-Advanced
136API-Assembla
137AXL-Client-Simple
138Algorithm-KernelKMeans
139Alien-ActiveMQ
140Alien-Ditaa
141AnyEvent-Inotify-Simple
142AnyEvent-JSONRPC
143AnyEvent-Retry
144AnyEvent-ZeroMQ
145App-Benchmark-Accessors
146App-Dataninja
147App-ForExample
148App-Magpie
149App-PgCryobit
150App-TemplateServer
151App-TemplateServer-Provider-HTML-Template
152App-TemplateServer-Provider-Mason
153App-TemplateServer-Provider-TD
154App-TimeTracker
155App-USBKeyCopyCon
156App-mkfeyorm
157Archive-RPM
158Bio-MAGETAB
159Bot-Applebot
160Bot-Backbone
161Bot-BasicBot-Pluggable
162Bot-BasicBot-Pluggable-Module-JIRA
163Business-UPS-Tracking
164CHI-Driver-Redis
165CPAN-Digger
166CPAN-Mini-Webserver
167Cache-Profile
168Cantella-Worker
169Cantella-Worker-Role-Beanstalk
170Catalyst-Authentication-Credential-Facebook-OAuth2
171Catalyst-Authentication-Store-Fey-ORM
172Catalyst-Authentication-Store-LDAP-AD-Class
173Catalyst-Controller-MovableType
174Catalyst-Controller-Resources
175Catalyst-Engine-Stomp
176Catalyst-Model-MenuGrinder
177Catalyst-Model-Search-ElasticSearch
178Catalyst-Model-Sedna
179Catalyst-Plugin-Continuation
180Catalyst-Plugin-ErrorCatcher-ActiveMQ-Stomp
181Catalyst-Plugin-Session
182Catalyst-Plugin-SwiffUploaderCookieHack
183Catalyst-TraitFor-Component-ConfigPerSite
184Catalyst-TraitFor-Controller-jQuery-jqGrid
185Catalyst-View-ByCode
186Catalyst-View-RDF
187CatalystX-Declare
188CatalystX-MooseComponent
189CatalystX-Restarter-GTK
190CatalystX-RoleApplicator
191CatalystX-SimpleAPI
192CatalystX-SimpleLogin
193CatalystX-Syntax-Action
194CatalystX-Usul
195Cave-Wrapper
196Chart-Clicker
197Chart-Weather-Forecast
198Cheater
199Chef
200Class-OWL
201Code-Statistics
202Cogwheel
203Constructible
204Coro-Amazon-SimpleDB
205Crypt-PBKDF2
206Curses-Toolkit
207DBICx-Modeler-Generator
208DBIx-Class-DeploymentHandler
209DBIx-PgLink
210DBIx-SchemaChecksum
211Data-Apache-mod_status
212Data-PackageName
213Data-Pipeline
214Data-SearchEngine-ElasticSearch
215DayDayUp
216Devel-Events
217Devel-IntelliPerl
218Dist-Zilla-Plugin-DualLife
219Dist-Zilla-Plugin-GitFlow
220Dist-Zilla-Plugin-MetaResourcesFromGit
221Dist-Zilla-Plugin-ProgCriticTests
222Dist-Zilla-Plugin-Rsync
223Dist-Zilla-Plugin-SVK
224Dist-Zilla-Plugin-Test-CPAN-Changes
225Dist-Zilla-Plugin-Test-Kwalitee
226Dist-Zilla-PluginBundle-ARODLAND
227Dist-Zilla-PluginBundle-Author-OLIVER
228Dist-Zilla-PluginBundle-FLORA
229Dist-Zilla-PluginBundle-NIGELM
230Dist-Zilla-PluginBundle-NUFFIN
231Dist-Zilla-PluginBundle-RBUELS
232DustyDB
233ELF-Extract-Sections
234ETLp
235FCGI-Engine
236FFmpeg-Thumbnail
237Fedora-App-MaintainerTools
238Fedora-App-ReviewTool
239Fey-SQL-Pg
240File-DataClass
241Finance-Bank-SentinelBenefits-Csv401kConverter
242Finance-Bank-SuomenVerkkomaksut
243Forest-Tree-Viewer-Gtk2
244Form-Factory
245Frost
246GOBO
247Games-AssaultCube
248Games-HotPotato
249Games-Pandemic
250Games-RailRoad
251Games-Risk
252Games-Tetris-Complete
253Gearman-Driver
254Geo-Calc
255Getopt-Chain
256Gitalist
257Google-Spreadsheet-Agent
258Grades
259Graphics-Primitive-Driver-Cairo
260Graphics-Primitive-Driver-CairoPango
261HTML-FormHandler
262HTML-FormHandler-Model-DBIC
263HTML-TreeBuilderX-ASP_NET
264Hobocamp
265Horris
266IM-Engine-Plugin-Dispatcher
267IMS-CP-Manifest
268IO-Multiplex-Intermediary
269Image-Placeholder
270JavaScript-Framework-jQuery
271Jungle
272Kafka-Client
273Kamaitachi
274KiokuDB-Backend-BDB
275KiokuDB-Backend-Files
276LWP-UserAgent-OfflineCache
277Locale-Handle-Pluggable
278Locale-MO-File
279Log-Dispatch-Gtk2-Notify
280MSWord-ToHTML
281Mail-Summary-Tools
282Mason
283MediaWiki-USERINFO
284Mildew
285MooseX-APIRole
286MooseX-Attribute-Prototype
287MooseX-AutoImmute
288MooseX-DBIC-Scaffold
289MooseX-DOM
290MooseX-Declare
291MooseX-Documenter
292MooseX-Error-Exception-Class
293MooseX-Meta-Attribute-Index
294MooseX-Meta-Attribute-Lvalue
295MooseX-Method-Signatures
296MooseX-MultiMethods
297MooseX-MultiObject
298MooseX-POE
299MooseX-Params
300MooseX-Struct
301MooseX-TrackDirty-Attributes
302MooseX-Workers
303Net-Douban
304Net-Dropbox
305Net-FluidDB
306Net-Fluidinfo
307Net-HTTP-Factual
308Net-Journyx
309Net-Parliament
310Net-Plurk
311Net-Recurly
312Net-StackExchange
313Net-Topsy
314NetHack-Item
315NetHack-Monster-Spoiler
316Nginx-Control
317ODG-Record
318POE-Component-Client-MPD
319POE-Component-DirWatch
320POE-Component-DirWatch-Object
321POE-Component-IRC-Plugin-Role
322POE-Component-MessageQueue
323POE-Component-ResourcePool
324POE-Component-Server-MySQL
325POE-Component-Server-PSGI
326POE-Component-Server-SimpleHTTP
327POE-Test-Helpers
328POEx-ProxySession
329POEx-PubSub
330POEx-WorkerPool
331Paludis-UseCleaner
332Parse-CPAN-Ratings
333Parse-FixedRecord
334Perlanet
335Perlbal-Control
336Pg-BulkCopy
337Pod-Weaver-Section-Encoding
338Proc-Safetynet
339Queue-Leaky
340RDF-Server
341RPC-Any
342Random-Quantum
536a71ad 343Reaction
9423490e 344Reflex
479647ca 345Reflexive-Role-Collective
346Reflexive-Role-DataMover
347Reflexive-Role-TCPServer
348Reflexive-Stream-Filtering
349SRS-EPP-Proxy
350STD
351Scene-Graph
352Schedule-Pluggable
353SchemaEvolution
354Server-Control
355SilkiX-Converter-Kwiki
356SimpleDB-Class
357String-Blender
358TAEB
359Tail-Tool
360Tapper-Installer
361Tapper-MCP
362Tapper-MCP-MessageReceiver
363Tapper-Reports-API
364Telephone-Mnemonic-US
365Template-Plugin-Heritable
366Test-A8N
367Test-BDD-Cucumber
368Test-Sweet
369Test-System
370Thorium
371Tk-Role-Dialog
9423490e 372TryCatch
479647ca 373TryCatch-Error
374VANAMBURG-SEMPROG-SimpleGraph
375VCI
376Verby
377W3C-XMLSchema
378WWW-FMyLife
379WWW-Fandango
380WWW-Getsy
381WWW-Getsy
382WWW-Mechanize-Cached
383WWW-MenuGrinder
384WWW-Metalgate
385WWW-Scramble
386WWW-StaticBlog
387WWW-Yahoo-Lyrics-JP
388Weaving-Tablet
389WebNano-Controller-CRUD
390WebService-Buxfer
391WebService-CloudFlare-Host
392WebService-SlimTimer
393WebService-Yes24
394WiX3
395XIRCD
396XML-Ant-BuildFile
397XML-EPP
398XML-LibXSLT-Easy
399XML-Rabbit
400XML-Schematron
401YUM-RepoQuery
402Yukki
403mobirc
404namespace-alias