summaryrefslogtreecommitdiff
path: root/t/op/tr.t
diff options
context:
space:
mode:
Diffstat (limited to 't/op/tr.t')
-rwxr-xr-xt/op/tr.t39
1 files changed, 39 insertions, 0 deletions
diff --git a/t/op/tr.t b/t/op/tr.t
new file mode 100755
index 0000000000..4e6667cd7f
--- /dev/null
+++ b/t/op/tr.t
@@ -0,0 +1,39 @@
+# tr.t
+
+BEGIN {
+ chdir 't' if -d 't';
+ unshift @INC, "../lib";
+}
+
+print "1..4\n";
+
+$_ = "abcdefghijklmnopqrstuvwxyz";
+
+tr/a-z/A-Z/;
+
+print "not " unless $_ eq "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
+print "ok 1\n";
+
+tr/A-Z/a-z/;
+
+print "not " unless $_ eq "abcdefghijklmnopqrstuvwxyz";
+print "ok 2\n";
+
+tr/b-y/B-Y/;
+
+print "not " unless $_ eq "aBCDEFGHIJKLMNOPQRSTUVWXYz";
+print "ok 3\n";
+
+# In EBCDIC 'I' is \xc9 and 'J' is \0xd1, 'i' is \x89 and 'j' is \x91.
+# Yes, discontinuities. Regardless, the \xca in the below should stay
+# untouched (and not became \x8a).
+{
+ no utf8;
+ $_ = "I\xcaJ";
+
+ tr/I-J/i-j/;
+
+ print "not " unless $_ eq "i\xcaj";
+ print "ok 4\n";
+}
+#