0ac159a1bbfe3bd8ee49ee6026f9fdd05f0197d3
[p5sagit/p5-mst-13.2.git] / ext / Encode / t / enc_module.t
1 # $Id: enc_module.t,v 1.2 2003/03/09 17:32:43 dankogai Exp $
2 # This file is in euc-jp
3 BEGIN {
4     require Config; import Config;
5     if ($Config{'extensions'} !~ /\bEncode\b/) {
6       print "1..0 # Skip: Encode was not built\n";
7       exit 0;
8     }
9     unless (find PerlIO::Layer 'perlio') {
10         print "1..0 # Skip: PerlIO was not built\n";
11         exit 0;
12     }
13     if (defined ${^UNICODE} and ${^UNICODE} != 0){
14         print "1..0 # Skip: \${^UNICODE} == ${^UNICODE}\n";
15         exit 0;
16     }
17     if (ord("A") == 193) {
18         print "1..0 # encoding pragma does not support EBCDIC platforms\n";
19         exit(0);
20     }
21 }
22 use lib 't';
23 use lib qw(ext/Encode/t ../ext/Encode/t); # in case of perl core
24 use Mod_EUCJP;
25 use encoding "euc-jp";
26 use Test::More tests => 3;
27 use File::Basename;
28 use File::Spec;
29 use File::Compare qw(compare_text);
30
31 my $dir = dirname(__FILE__);
32 my $file0 = File::Spec->catfile($dir,"enc_module.enc");
33 my $file1 = File::Spec->catfile($dir,"$$.enc");
34
35 my $obj = Mod_EUCJP->new;
36 local $SIG{__WARN__} = sub{}; # to silence reopening STD(IN|OUT) w/o closing
37
38 open STDOUT, ">", $file1 or die "$file1:$!";
39 print $obj->str, "\n";
40 $obj->set("¥Æ¥¹¥Èʸ»úÎó");
41 print $obj->str, "\n";
42 close STDOUT;
43
44 my $cmp = compare_text($file0, $file1);
45 is($cmp, 0, "encoding vs. STDOUT");
46 unlink $file1 unless $cmp;
47
48 my @cmp = qw/½é´üʸ»úÎó ¥Æ¥¹¥Èʸ»úÎó/;
49 open STDIN, "<", $file0 or die "$file0:$!";
50 $obj = Mod_EUCJP->new;
51 my $i = 0;
52 while(<STDIN>){
53     chomp;
54     is ($cmp[$i++], $_, "encoding vs. STDIN - $i");
55 }
56
57 __END__
58