This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
APItest/t/handy.t: Skip some tests on EBCDIC
authorKarl Williamson <khw@cpan.org>
Wed, 18 Jan 2017 18:05:47 +0000 (11:05 -0700)
committerKarl Williamson <khw@cpan.org>
Wed, 18 Jan 2017 18:15:19 +0000 (11:15 -0700)
The skipped tests are for malformed input for the various isCNTRL
functions.  Perl does not go out of its way to test for malformedness in
the these, only making sure they are well-formed if that is necessary
for the correct operation of the function.  Since all controls in EBCDIC
are represented by a single byte, and you can't malform a single byte,
all the malformedness control tests will not detect malformedness on
EBCDIC platforms, so skip them.

ext/XS-APItest/t/handy.t

index 3bbc0ba..5ae97cd 100644 (file)
@@ -119,6 +119,9 @@ sub try_malforming($$$)
     # ASCII doesn't need to ever look beyond the first byte.
     return 0 if $function eq "ASCII";
 
+    # Nor, on EBCDIC systems, does CNTRL
+    return 0 if ord "A" != 65 && $function eq "CNTRL";
+
     # No controls above 255, so the code doesn't look at those
     return 0 if $u > 255 && $function eq "CNTRL";