summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2000-03-18 16:41:31 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2000-03-18 16:41:31 +0000
commit6d4f734c7dcb73e49cff15cfce4389390a27bda5 (patch)
tree993e9017eb43a364f1152e0c7ee64e1d77bc1087 /t
parent3a330b61229316babfeec3d73f71ddb89e6e8552 (diff)
parent151afd43bea82dd30ddad05d5473070608c1d3fb (diff)
downloadperl-6d4f734c7dcb73e49cff15cfce4389390a27bda5.tar.gz
Integrate with Sarathy.
p4raw-id: //depot/cfgperl@5801
Diffstat (limited to 't')
-rw-r--r--t/lib/charnames.t17
-rwxr-xr-xt/pragma/utf8.t169
2 files changed, 183 insertions, 3 deletions
diff --git a/t/lib/charnames.t b/t/lib/charnames.t
index f4d95771c0..a6fe47f305 100644
--- a/t/lib/charnames.t
+++ b/t/lib/charnames.t
@@ -8,7 +8,7 @@ BEGIN {
}
$| = 1;
-print "1..5\n";
+print "1..10\n";
use charnames ':full';
@@ -44,7 +44,6 @@ $encoded_alpha = "\316\261";
$encoded_bet = "\327\221";
{
use charnames ':full';
- use utf8;
print "not " unless "\N{CYRILLIC SMALL LETTER BE}" eq $encoded_be;
print "ok 4\n";
@@ -55,3 +54,17 @@ $encoded_bet = "\327\221";
eq "$encoded_be,$encoded_alpha,$encoded_bet";
print "ok 5\n";
}
+
+{
+ use charnames ':full';
+ print "not " unless "\x{263a}" eq "\N{WHITE SMILING FACE}";
+ print "ok 6\n";
+ print "not " unless length("\x{263a}") == 1;
+ print "ok 7\n";
+ print "not " unless length("\N{WHITE SMILING FACE}") == 1;
+ print "ok 8\n";
+ print "not " unless sprintf("%vx", "\x{263a}") eq "263a";
+ print "ok 9\n";
+ print "not " unless sprintf("%vx", "\N{WHITE SMILING FACE}") eq "263a";
+ print "ok 10\n";
+}
diff --git a/t/pragma/utf8.t b/t/pragma/utf8.t
index 2ae8d9c784..0e55a67d69 100755
--- a/t/pragma/utf8.t
+++ b/t/pragma/utf8.t
@@ -10,7 +10,7 @@ BEGIN {
}
}
-print "1..12\n";
+print "1..60\n";
my $test = 1;
@@ -84,3 +84,170 @@ sub ok {
ok $1, '123alpha';
$test++;
}
+{
+ use utf8;
+
+ $_ = "\x{263A}>\x{263A}\x{263A}";
+
+ ok length, 4;
+ $test++;
+
+ ok length((m/>(.)/)[0]), 1;
+ $test++;
+
+ ok length($&), 2;
+ $test++;
+
+ ok length($'), 1;
+ $test++;
+
+ ok length($`), 1;
+ $test++;
+
+ ok length($1), 1;
+ $test++;
+
+ ok length($tmp=$&), 2;
+ $test++;
+
+ ok length($tmp=$'), 1;
+ $test++;
+
+ ok length($tmp=$`), 1;
+ $test++;
+
+ ok length($tmp=$1), 1;
+ $test++;
+
+ ok $&, pack("C*", ord(">"), 0342, 0230, 0272);
+ $test++;
+
+ ok $', pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ ok $`, pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ ok $1, pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ {
+ use bytes;
+ no utf8;
+
+ ok length, 10;
+ $test++;
+
+ ok length((m/>(.)/)[0]), 1;
+ $test++;
+
+ ok length($&), 2;
+ $test++;
+
+ ok length($'), 5;
+ $test++;
+
+ ok length($`), 3;
+ $test++;
+
+ ok length($1), 1;
+ $test++;
+
+ ok $&, pack("C*", ord(">"), 0342);
+ $test++;
+
+ ok $', pack("C*", 0230, 0272, 0342, 0230, 0272);
+ $test++;
+
+ ok $`, pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ ok $1, pack("C*", 0342);
+ $test++;
+
+ }
+
+
+ {
+ no utf8;
+ $_="\342\230\272>\342\230\272\342\230\272";
+ }
+
+ ok length, 10;
+ $test++;
+
+ ok length((m/>(.)/)[0]), 1;
+ $test++;
+
+ ok length($&), 2;
+ $test++;
+
+ ok length($'), 1;
+ $test++;
+
+ ok length($`), 1;
+ $test++;
+
+ ok length($1), 1;
+ $test++;
+
+ ok length($tmp=$&), 2;
+ $test++;
+
+ ok length($tmp=$'), 1;
+ $test++;
+
+ ok length($tmp=$`), 1;
+ $test++;
+
+ ok length($tmp=$1), 1;
+ $test++;
+
+ ok $&, pack("C*", ord(">"), 0342, 0230, 0272);
+ $test++;
+
+ ok $', pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ ok $`, pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ ok $1, pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ {
+ use bytes;
+ no utf8;
+
+ ok length, 10;
+ $test++;
+
+ ok length((m/>(.)/)[0]), 1;
+ $test++;
+
+ ok length($&), 2;
+ $test++;
+
+ ok length($'), 5;
+ $test++;
+
+ ok length($`), 3;
+ $test++;
+
+ ok length($1), 1;
+ $test++;
+
+ ok $&, pack("C*", ord(">"), 0342);
+ $test++;
+
+ ok $', pack("C*", 0230, 0272, 0342, 0230, 0272);
+ $test++;
+
+ ok $`, pack("C*", 0342, 0230, 0272);
+ $test++;
+
+ ok $1, pack("C*", 0342);
+ $test++;
+
+ }
+}