use strict;
eval {
require LWP::Sink::qp;
};
if ($@) {
print "1..0\n" if $@ =~ /^Can\'t locate MIME/; # ::QuotedPrint...
print $@;
exit;
}
open(STDERR, ">&STDOUT") || die "Can't dup stdout";
$| = 1;
print "1..1\n";
use LWP::Sink::Buffer;
use LWP::Sink::Monitor;
print "chr(0)..chr(255) --> encode --> decode\n";
my $sink = LWP::Sink::qp::encode->new;
$sink->push(LWP::Sink::Monitor->new);
$sink->push(LWP::Sink::qp::decode->new);
my $b;
$sink->push($b = LWP::Sink::Buffer->new);
for (1..10) {
for (0..255) {
$sink->put(chr $_);
}
}
$sink->close;
print "not " unless $b->buffer eq join("", map chr $_, 0..255) x 10;
print "ok 1\n";