summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-04-07 14:25:28 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-04-07 14:25:28 +0000
commitdd36d13c89140c2d9d7954b9f1de583003154c13 (patch)
treeadaef7a5e5beeb3683ba8880a94fc181ad7f00d4 /t
parent525c8498a83d993a86ed1c5080d595040c6663f5 (diff)
downloadperl-dd36d13c89140c2d9d7954b9f1de583003154c13.tar.gz
There was no nice way of getting in UTF-8 filenames:
now one can use in the (new) three-arg form of readdir() and in File::Glob import a ":utf8" to transparently accept the filenames as Unicode. Note that only :utf8 is supported, not fancier stuff like :encoding(foobar) p4raw-id: //depot/perl@15776
Diffstat (limited to 't')
-rwxr-xr-xt/op/readdir.t24
1 files changed, 23 insertions, 1 deletions
diff --git a/t/op/readdir.t b/t/op/readdir.t
index 7cfecdb565..8e67b65da6 100755
--- a/t/op/readdir.t
+++ b/t/op/readdir.t
@@ -8,7 +8,7 @@ BEGIN {
eval 'opendir(NOSUCH, "no/such/directory");';
if ($@) { print "1..0\n"; exit; }
-print "1..3\n";
+print "1..6\n";
for $i (1..2000) {
local *OP;
@@ -43,3 +43,25 @@ while (@R && @G && "op/".$R[0] eq $G[0]) {
shift(@G);
}
if (@R == 0 && @G == 0) { print "ok 3\n"; } else { print "not ok 3\n"; }
+
+# Can't really depend on Tru64 UTF-8 filenames being so must just see
+# that things don't crash and that *if* UTF-8 were to be received, it's
+# valid. (Maybe later add checks that are run if we are on NTFS/HFS+.)
+# (see also ext/File/Glob/t/utf8.t)
+
+opendir(OP, ":utf8", "op");
+
+my $a = readdir(OP);
+
+print utf8::valid($a) ? "ok 4\n" : "not ok 4\n";
+
+my @a = readdir(OP);
+
+print utf8::valid($a[0]) ? "ok 5\n" : "not ok 5\n";
+
+# But we can check for bogus mode arguments.
+
+eval { opendir(OP, ":foo", "op") };
+
+print $@ =~ /Unknown discipline ':foo'/ ? "ok 6\n" : "not ok 6\n";
+