1use strict; 2use warnings; 3 4use Test::More; 5 6my %deps = ( 7 ApacheLog => 'Apache::Log', 8 File => '', 9 'File::Locked' => '', 10 Handle => '', 11 Screen => '', 12 Syslog => 'Sys::Syslog 0.25', 13 'Email::MailSend' => 'Mail::Send', 14 'Email::MIMELite' => 'MIME::Lite', 15 'Email::MailSendmail' => 'Mail::Sendmail', 16 'Email::MailSender' => 'Mail::Sender', 17); 18 19plan tests => 1 + scalar keys %deps; 20 21use_ok('Log::Dispatch'); 22 23for my $subclass ( sort keys %deps ) { 24 my $module = "Log::Dispatch::$subclass"; 25 26 if ( !$deps{$subclass} 27 || ( eval "use $deps{$subclass}; 1" && !$@ ) ) { 28 use_ok($module); 29 } 30 else { 31 SKIP: 32 { 33 skip "Cannot load $module without $deps{$subclass}", 1; 34 } 35 } 36} 37