Upgrade to Encode 1.31, from Dan Kogai.
[p5sagit/p5-mst-13.2.git] / ext / Encode / t / Encoder.t
1 #
2 # $Id: Encoder.t,v 1.1 2002/04/08 18:07:31 dankogai Exp $
3 #
4
5 BEGIN {
6     require Config; import Config;
7     if ($Config{'extensions'} !~ /\bEncode\b/) {
8       print "1..0 # Skip: Encode was not built\n";
9       exit 0;
10     }
11 # should work without perlio
12 #     unless (find PerlIO::Layer 'perlio') {
13 #       print "1..0 # Skip: PerlIO was not built\n";
14 #       exit 0;
15 #     }
16 # should work on EBCDIC
17 #    if (ord("A") == 193) {
18 #       print "1..0 # Skip: EBCDIC\n";
19 #       exit 0;
20 #    }
21     $| = 1;
22 }
23
24 use strict;
25 #use Test::More 'no_plan';
26 use Test::More tests => 512;
27 use Encode::Encoder;
28 use MIME::Base64;
29 package Encode::Base64;
30 use base 'Encode::Encoding';
31 __PACKAGE__->Define('base64');
32 use MIME::Base64;
33 sub encode{
34     my ($obj, $data) = @_;
35     return encode_base64($data);
36 }
37 sub decode{
38     my ($obj, $data) = @_;
39     return decode_base64($data);
40 }
41
42 package main;
43
44 my $data = '';
45 for my $i (0..255){
46     no warnings;
47     $data .= chr($i);
48     my $base64 = encode_base64($data);
49     is(encoder($data)->base64, $base64, "encode");
50     is(encoder($base64)->bytes('base64'), $data, "decode");
51 }
52
53 1;
54 __END__