Cross Reference: fallback.t
xref
: /
osnet-11
/
usr
/
src
/
cmd
/
perl
/
5.8.4
/
distrib
/
ext
/
PerlIO
/
t
/
fallback.t
Home
History
Annotate
Line#
Navigate
Download
Search
only in
./
fallback.t revision 1
1
N/A
#!./perl
1
N/A
1
N/A
BEGIN
{
1
N/A
chdir
't'
if
-d
't'
;
1
N/A
@
INC
=
'../lib'
;
1
N/A
push
@
INC
,
"::lib:
$MacPerl
::Architecture:"
if
$^O
eq
'MacOS'
;
1
N/A
require
"../
t
/
test.pl
"
;
1
N/A
skip_all
(
"No perlio"
)
unless
(
find
PerlIO
::
Layer
'perlio'
)
;
1
N/A
if
(
ord
(
"A"
)
==
193
)
{
1
N/A
print
"1..0 # Skip: EBCDIC\n"
;
1
N/A
exit
0
;
1
N/A
}
1
N/A
unless
(
eval
{
require
Encode
} )
{
1
N/A
print
"1..0 # Skip: No Encode\n"
;
1
N/A
exit
0
;
1
N/A
}
1
N/A
plan
(
9
)
;
1
N/A
import
Encode
qw
(:
fallback_all
)
;
1
N/A
}
1
N/A
1
N/A
# $PerlIO::encoding = 0; # WARN_ON_ERR|PERLQQ;
1
N/A
1
N/A
my
$file
=
"fallback$$.txt"
;
1
N/A
1
N/A
{
1
N/A
my
$message
=
''
;
1
N/A
local
$SIG
{
__WARN__
} =
sub
{
$message
= $_[
0
] };
1
N/A
$PerlIO
::
encoding
::
fallback
=
Encode
::
PERLQQ
;
1
N/A
ok
(
open
(
my
$fh
,
">encoding(iso-8859-1)"
,
$file
)
,
"opened iso-8859-1 file"
)
;
1
N/A
my
$str
=
"\x{20AC}"
;
1
N/A
print
$fh
$str
,
"0.02\n"
;
1
N/A
close
(
$fh
)
;
1
N/A
like
(
$message
,
qr
/
does
not
map
to
iso
-
8859
-
1
/o,
"FB_WARN message"
)
;
1
N/A
}
1
N/A
1
N/A
open
(
$fh
,
$file
)
||
die
"File cannot be re-opened"
;
1
N/A
my
$line
= <
$fh
>;
1
N/A
is
(
$line
,
"\\x{20ac}0.02\n"
,
"perlqq escapes"
)
;
1
N/A
close
(
$fh
)
;
1
N/A
1
N/A
$PerlIO
::
encoding
::
fallback
=
Encode
::
HTMLCREF
;
1
N/A
1
N/A
ok
(
open
(
my
$fh
,
">encoding(iso-8859-1)"
,
$file
)
,
"opened iso-8859-1 file"
)
;
1
N/A
my
$str
=
"\x{20AC}"
;
1
N/A
print
$fh
$str
,
"0.02\n"
;
1
N/A
close
(
$fh
)
;
1
N/A
1
N/A
open
(
$fh
,
$file
)
||
die
"File cannot be re-opened"
;
1
N/A
my
$line
= <
$fh
>;
1
N/A
is
(
$line
,
"€0.02\n"
,
"HTML escapes"
)
;
1
N/A
close
(
$fh
)
;
1
N/A
1
N/A
{
1
N/A
no
utf8
;
1
N/A
open
(
$fh
,
">
$file
"
)
||
die
"File cannot be re-opened"
;
1
N/A
binmode
(
$fh
)
;
1
N/A
print
$fh
"\xA30.02\n"
;
1
N/A
close
(
$fh
)
;
1
N/A
}
1
N/A
1
N/A
ok
(
open
(
$fh
,
"<encoding(US-ASCII)"
,
$file
)
,
"Opened as ASCII"
)
;
1
N/A
my
$line
= <
$fh
>;
1
N/A
printf
"# %x\n"
,
ord
(
$line
)
;
1
N/A
is
(
$line
,
"\\xA30.02\n"
,
"Escaped non-mapped char"
)
;
1
N/A
close
(
$fh
)
;
1
N/A
1
N/A
$PerlIO
::
encoding
::
fallback
=
Encode
::
WARN_ON_ERROR
;
1
N/A
1
N/A
ok
(
open
(
$fh
,
"<encoding(US-ASCII)"
,
$file
)
,
"Opened as ASCII"
)
;
1
N/A
my
$line
= <
$fh
>;
1
N/A
printf
"# %x\n"
,
ord
(
$line
)
;
1
N/A
is
(
$line
,
"\x{FFFD}0.02\n"
,
"Unicode replacement char"
)
;
1
N/A
close
(
$fh
)
;
1
N/A
1
N/A
END
{
1
N/A
1
while
unlink
(
$file
)
;
1
N/A
}