1 # $Id: enc_module.t,v 1.1 2003/02/28 01:40:27 dankogai Exp dankogai $
2 # This file is in euc-jp
4 require Config; import Config;
5 if ($Config{'extensions'} !~ /\bEncode\b/) {
6 print "1..0 # Skip: Encode was not built\n";
9 unless (find PerlIO::Layer 'perlio') {
10 print "1..0 # Skip: PerlIO was not built\n";
13 if (ord("A") == 193) {
14 print "1..0 # encoding pragma does not support EBCDIC platforms\n";
19 use lib qw(ext/Encode/t ../ext/Encode/t); # in case of perl core
21 use encoding "euc-jp";
22 use Test::More tests => 3;
25 use File::Compare qw(compare_text);
27 my $dir = dirname(__FILE__);
28 my $file0 = File::Spec->catfile($dir,"enc_module.enc");
29 my $file1 = File::Spec->catfile($dir,"$$.enc");
31 my $obj = Mod_EUCJP->new;
32 # Isn't this dangerous in that we lose all possible warnings?
33 # Maybe a scoped use warnings 'something' instead? --jhi
34 local $SIG{__WARN__} = sub{}; # to silence reopening STD(IN|OUT) w/o closing
36 open STDOUT, ">", $file1 or die "$file1:$!";
37 print $obj->str, "\n";
38 $obj->set("¥Æ¥¹¥Èʸ»úÎó");
39 print $obj->str, "\n";
42 my $cmp = compare_text($file0, $file1);
43 is($cmp, 0, "encoding vs. STDOUT");
44 unlink $file1 unless $cmp;
46 my @cmp = qw/½é´üʸ»úÎó ¥Æ¥¹¥Èʸ»úÎó/;
47 open STDIN, "<", $file0 or die "$file0:$!";
48 $obj = Mod_EUCJP->new;
52 is ($cmp[$i++], $_, "encoding vs. STDIN - $i");