]>
Dogcows Code - chaz/p5-File-KDBX/blob - t/compression.t
3412dc2d3f7ccb881ef9b779835edc9f8cc81481
10 use PerlIO
::via
::File
::KDBX
::Compression
;
13 eval { require Compress
::Raw
::Zlib
}
14 or plan skip_all
=> 'Compress::Zlib::Raw required to test compression';
16 my $expected_plaintext = 'Tiny food from Spain!';
18 pipe(my $read, my $write) or die "pipe failed: $!";
19 PerlIO
::via
::File
::KDBX
::Compression-
>push($read);
20 PerlIO
::via
::File
::KDBX
::Compression-
>push($write);
22 print $write $expected_plaintext or die "print failed: $!";
23 binmode($write, ':pop'); # finish stream
24 close($write) or die "close failed: $!";
26 my $plaintext = do { local $/; <$read> };
28 is $plaintext, $expected_plaintext, 'Deflate and inflate a string';
31 pipe(my $read, my $write) or die "pipe failed: $!";
32 PerlIO
::via
::File
::KDBX
::Compression-
>push($read);
34 print $write 'blah blah blah' or die "print failed: $!";
35 close($write) or die "close failed: $!";
37 is $read->error, 0, 'Read handle starts out fine';
38 my $plaintext = do { local $/; <$read> };
39 is $read->error, 1, 'Read handle can enter and error state';
41 like
$PerlIO::via
::File
::KDBX
::Compression
::ERROR
, qr/failed to uncompress/i,
42 'Error object is available';
This page took 0.036283 seconds and 4 git commands to generate.