diff options
Diffstat (limited to 't/048lwp.t')
-rw-r--r-- | t/048lwp.t | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/t/048lwp.t b/t/048lwp.t new file mode 100644 index 0000000..5749ff5 --- /dev/null +++ b/t/048lwp.t @@ -0,0 +1,98 @@ +########################################### +# Test Suite for LWP debugging with Log4perl +# Mike Schilli, 2004 (m@perlmeister.com) +########################################### + +BEGIN { + if($ENV{INTERNAL_DEBUG}) { + require Log::Log4perl::InternalDebug; + Log::Log4perl::InternalDebug->enable(); + } +} + +use warnings; +use strict; + +use Test::More; + +BEGIN { + eval { + require LWP::UserAgent; + die "Skip tests" if $LWP::UserAgent::VERSION < 2.0; + die "Skip tests" if $LWP::UserAgent::VERSION >= 5.822; + }; + + if($@) { + plan skip_all => "Only with 2.0 < LWP::UserAgent < 5.822 "; + } else { + plan tests => 3; + } +} + +use Log::Log4perl qw(:easy); +use Log::Log4perl::Util; + +Log::Log4perl->easy_init( + { level => $DEBUG, + category => "LWP::UserAgent", + file => 'lwpout.txt' + }); + +Log::Log4perl->infiltrate_lwp(); + +my $ua = LWP::UserAgent->new(); + +my $tmpfile = Log::Log4perl::Util::tmpfile_name(); +END { unlink $tmpfile }; +$ua->get("file:$tmpfile"); + +open LOG, "<lwpout.txt" or die "Cannot open lwpout.txt"; +my $data = join('', <LOG>); +close LOG; + +like($data, qr#\QGET file:$tmpfile\E#); + +END { unlink "lwpout.txt" } + +#################################### +# Check different category +#################################### +Log::Log4perl->reset(); +Log::Log4perl->easy_init( + { level => $DEBUG, + category => "LWP::SchmoozeAgent", + file => '>lwpout.txt' + }); + +Log::Log4perl->infiltrate_lwp(); + +$ua = LWP::UserAgent->new(); +$ua->get("file:$tmpfile"); + +open LOG, "<lwpout.txt" or die "Cannot open lwpout.txt"; +$data = join('', <LOG>); +close LOG; + +is($data, ''); + +#################################### +# Check layout +#################################### +Log::Log4perl->reset(); +Log::Log4perl->easy_init( + { level => $DEBUG, + category => "LWP::UserAgent", + file => '>lwpout.txt', + layout => '%F-%L: %m%n', + }); + +Log::Log4perl->infiltrate_lwp(); + +$ua = LWP::UserAgent->new(); +$ua->get("file:$tmpfile"); + +open LOG, "<lwpout.txt" or die "Cannot open lwpout.txt"; +$data = join('', <LOG>); +close LOG; + +like($data, qr#LWP/UserAgent.pm-\d+#); |