Upgrade to Encode 2.00.
[p5sagit/p5-mst-13.2.git] / ext / Encode / t / Encoder.t
1 #
2 # $Id: Encoder.t,v 2.0 2004/05/16 20:55:17 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     $| = 1;
12 }
13
14 use strict;
15 #use Test::More 'no_plan';
16 use Test::More tests => 516;
17 use Encode::Encoder qw(encoder);
18 use MIME::Base64;
19 package Encode::Base64;
20 use base 'Encode::Encoding';
21 __PACKAGE__->Define('base64');
22 use MIME::Base64;
23 sub encode{
24     my ($obj, $data) = @_;
25     return encode_base64($data);
26 }
27 sub decode{
28     my ($obj, $data) = @_;
29     return decode_base64($data);
30 }
31
32 package main;
33
34 my $e = encoder("foo", "ascii");
35 ok ($e->data("bar"));
36 is ($e->data, "bar");
37 ok ($e->encoding("latin1"));
38 is ($e->encoding, "iso-8859-1");
39
40 my $data = '';
41 for my $i (0..255){
42     no warnings;
43     $data .= chr($i);
44     my $base64 = encode_base64($data);
45     is(encoder($data)->base64, $base64, "encode");
46     is(encoder($base64)->bytes('base64'), $data, "decode");
47 }
48
49 1;
50 __END__