File: no_leak.t

package info (click to toggle)
libwww-perl 6.78-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,008 kB
  • sloc: perl: 4,148; makefile: 10; sh: 6
file content (26 lines) | stat: -rw-r--r-- 659 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use strict;
use warnings;

# To ensure "no leak" in real LWP code, we should test it against HTTP servers.
# However, HTTPS is not required here, so let's use an HTTP site neverssl.com.
use Test::RequiresInternet 'neverssl.com' => 80;

use Test::More;
use Test::Needs 'Test::LeakTrace';

use File::Temp ();
use LWP::UserAgent ();

plan skip_all => 'skip leak test in COVERAGE' if $ENV{COVERAGE};

my ($tempfh, $tempfile) = File::Temp::tempfile(UNLINK => 0);
close $tempfh;

Test::LeakTrace::no_leaks_ok(sub {
    my $ua = LWP::UserAgent->new;
    my $res = $ua->get("http://neverssl.com/", ':content_file' => $tempfile);
});

unlink $tempfile;

done_testing;