1use strict; 2use warnings; 3 4use Test::More; 5 6my %deps = ( 7 ApacheLog => 'Apache::Log', 8 Code => q{}, 9 File => q{}, 10 'File::Locked' => q{}, 11 Handle => q{}, 12 Null => q{}, 13 Screen => q{}, 14 Syslog => 'Sys::Syslog 0.28', 15 'Email::MailSend' => 'Mail::Send', 16 'Email::MIMELite' => 'MIME::Lite', 17 'Email::MailSendmail' => 'Mail::Sendmail', 18 'Email::MailSender' => 'Mail::Sender', 19); 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 38done_testing(); 39