source: trunk/essentials/dev-lang/perl/ext/Encode/t/Encoder.t@ 3403

Last change on this file since 3403 was 3181, checked in by bird, 19 years ago

perl 5.8.8

File size: 1004 bytes
Line 
1#
2# $Id: Encoder.t,v 2.0 2004/05/16 20:55:17 dankogai Exp $
3#
4
5BEGIN {
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
14use strict;
15#use Test::More 'no_plan';
16use Test::More tests => 516;
17use Encode::Encoder qw(encoder);
18use MIME::Base64;
19package Encode::Base64;
20use base 'Encode::Encoding';
21__PACKAGE__->Define('base64');
22use MIME::Base64;
23sub encode{
24 my ($obj, $data) = @_;
25 return encode_base64($data);
26}
27sub decode{
28 my ($obj, $data) = @_;
29 return decode_base64($data);
30}
31
32package main;
33
34my $e = encoder("foo", "ascii");
35ok ($e->data("bar"));
36is ($e->data, "bar");
37ok ($e->encoding("latin1"));
38is ($e->encoding, "iso-8859-1");
39
40my $data = '';
41for 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
491;
50__END__
Note: See TracBrowser for help on using the repository browser.