summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorSADAHIRO Tomoyuki <BQW10602@nifty.com>2004-01-12 20:19:37 +0900
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2004-01-12 10:10:43 +0000
commite4803c42e84cae1aa5a416a4f8c6f80f7d37e49f (patch)
treebf0b651be89874b5675c9071eeeb881ed8bf28b3 /t
parentee23bc3a3363698b42b1a9b84f636e7956b5fee0 (diff)
downloadperl-e4803c42e84cae1aa5a416a4f8c6f80f7d37e49f.tar.gz
Re: [perl #24846] [PATCH] Apparent utf8 bug in join() in 5.8.[012]
Message-Id: <20040112111007.EB69.BQW10602@nifty.com> p4raw-id: //depot/perl@22117
Diffstat (limited to 't')
-rwxr-xr-xt/op/join.t28
1 files changed, 27 insertions, 1 deletions
diff --git a/t/op/join.t b/t/op/join.t
index 0f849fda9c..a1cc607125 100755
--- a/t/op/join.t
+++ b/t/op/join.t
@@ -1,6 +1,6 @@
#!./perl
-print "1..14\n";
+print "1..18\n";
@x = (1, 2, 3);
if (join(':',@x) eq '1:2:3') {print "ok 1\n";} else {print "not ok 1\n";}
@@ -65,3 +65,29 @@ if ($f eq 'baeak') {print "ok 6\n";} else {print "# '$f'\nnot ok 6\n";}
print "ok 14\n";
}
+{ # [perl #24846] $jb2 should be in bytes, not in utf8.
+ my $b = "abc\304";
+ my $u = "abc\x{0100}";
+
+ sub join_into_my_variable {
+ my $r = join("", @_);
+ return $r;
+ }
+
+ my $jb1 = join_into_my_variable("", $b);
+ my $ju1 = join_into_my_variable("", $u);
+ my $jb2 = join_into_my_variable("", $b);
+ my $ju2 = join_into_my_variable("", $u);
+
+ print "not " unless unpack('H*', $jb1) eq unpack('H*', $b);
+ print "ok 15\n";
+
+ print "not " unless unpack('H*', $ju1) eq unpack('H*', $u);
+ print "ok 16\n";
+
+ print "not " unless unpack('H*', $jb2) eq unpack('H*', $b);
+ print "ok 17\n";
+
+ print "not " unless unpack('H*', $ju2) eq unpack('H*', $u);
+ print "ok 18\n";
+}