1N/A#
1N/A# $Id: Encoder.t,v 1.3 2002/04/16 23:35:00 dankogai Exp $
1N/A#
1N/A
1N/ABEGIN {
1N/A require Config; import Config;
1N/A if ($Config{'extensions'} !~ /\bEncode\b/) {
1N/A print "1..0 # Skip: Encode was not built\n";
1N/A exit 0;
1N/A }
1N/A $| = 1;
1N/A}
1N/A
1N/Ause strict;
1N/A#use Test::More 'no_plan';
1N/Ause Test::More tests => 516;
1N/Ause Encode::Encoder qw(encoder);
1N/Ause MIME::Base64;
1N/Apackage Encode::Base64;
1N/Ause base 'Encode::Encoding';
1N/A__PACKAGE__->Define('base64');
1N/Ause MIME::Base64;
1N/Asub encode{
1N/A my ($obj, $data) = @_;
1N/A return encode_base64($data);
1N/A}
1N/Asub decode{
1N/A my ($obj, $data) = @_;
1N/A return decode_base64($data);
1N/A}
1N/A
1N/Apackage main;
1N/A
1N/Amy $e = encoder("foo", "ascii");
1N/Aok ($e->data("bar"));
1N/Ais ($e->data, "bar");
1N/Aok ($e->encoding("latin1"));
1N/Ais ($e->encoding, "iso-8859-1");
1N/A
1N/Amy $data = '';
1N/Afor my $i (0..255){
1N/A no warnings;
1N/A $data .= chr($i);
1N/A my $base64 = encode_base64($data);
1N/A is(encoder($data)->base64, $base64, "encode");
1N/A is(encoder($base64)->bytes('base64'), $data, "decode");
1N/A}
1N/A
1N/A1;
1N/A__END__