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