1use Log::Log4perl; 2use Test::More; 3use File::Spec; 4 5our $LOG_DISPATCH_PRESENT = 0; 6 7BEGIN { 8 eval { require Log::Dispatch; }; 9 if($@) { 10 plan skip_all => "only with Log::Dispatch"; 11 } else { 12 $LOG_DISPATCH_PRESENT = 1; 13 plan tests => 1; 14 } 15}; 16 17my $WORK_DIR = "tmp"; 18if(-d "t") { 19 $WORK_DIR = File::Spec->catfile(qw(t tmp)); 20} 21unless (-e "$WORK_DIR"){ 22 mkdir("$WORK_DIR", 0755) || die "can't create $WORK_DIR ($!)"; 23} 24 25use vars qw(@outfiles $test_logfile); 26$test_logfile = File::Spec->catfile($WORK_DIR, 'test2.log'); 27@outfiles = ($test_logfile); 28foreach my $f (@outfiles){ 29 unlink $f if (-e $f); 30} 31 32 33my $conf = <<CONF; 34log4j.category.cat1 = INFO, myAppender 35 36log4j.appender.myAppender=org.apache.log4j.FileAppender 37log4j.appender.myAppender.File=$test_logfile 38log4j.appender.myAppender.layout=org.apache.log4j.PatternLayout 39log4j.appender.myAppender.layout.ConversionPattern=%-5p %c - %m%n 40CONF 41 42Log::Log4perl->init(\$conf); 43 44my $logger = Log::Log4perl->get_logger('cat1'); 45 46$logger->debug("debugging message 1 "); 47$logger->info("info message 1 "); 48$logger->warn("warning message 1 "); 49$logger->fatal("fatal message 1 "); 50 51 52my ($result, $expected); 53 54$expected = <<EOL; 55INFO cat1 - info message 1 56WARN cat1 - warning message 1 57FATAL cat1 - fatal message 1 58EOL 59 60{local $/ = undef; 61 open (F, "$test_logfile") || die $!; 62 $result = <F>; 63 close F; 64} 65is ($result, $expected); 66 67foreach my $f (@outfiles){ 68 unlink $f if (-e $f); 69} 70 71