Use (file PerlIO::Layer 'perlio') rather than $Config{useperlio}
Nick Ing-Simmons [Sun, 28 Apr 2002 08:57:54 +0000 (08:57 +0000)]
as gate on layer tests which fail on -Dusesfio
(ext/XS/Typemap/Typemap.t still fails on -Dusesfio)

p4raw-id: //depot/perlio@16245

ext/PerlIO/PerlIO.t
lib/open.t
lib/warnings.t
t/io/binmode.t
t/io/crlf.t

index d3de705..3be0f6a 100644 (file)
@@ -2,7 +2,7 @@ BEGIN {
        chdir 't' if -d 't';
        @INC = '../lib';
        require Config; import Config;
-       unless ($Config{'useperlio'}) {
+       unless (find PerlIO::Layer 'perlio') {
            print "1..0 # Skip: PerlIO not used\n";
            exit 0;
        }
index d9d385b..48abf25 100644 (file)
@@ -18,11 +18,11 @@ ok( require 'open.pm', 'requiring open' );
 
 # this should fail
 eval { import() };
-like( $@, qr/needs explicit list of disciplines/, 
+like( $@, qr/needs explicit list of disciplines/,
        'import should fail without args' );
 
 # the hint bits shouldn't be set yet
-is( $^H & $open::hint_bits, 0, 
+is( $^H & $open::hint_bits, 0,
        'hint bits should not be set in $^H before open import' );
 
 # prevent it from loading I18N::Langinfo, so we can test encoding failures
@@ -39,11 +39,11 @@ is( $warn, '',
 
 $warn = '';
 eval q{ use warnings 'layer'; use open IN => ':macguffin' ; };
-like( $warn, qr/Unknown discipline layer/, 
+like( $warn, qr/Unknown discipline layer/,
        'should warn about unknown discipline with bad discipline provided' );
 
 SKIP: {
-    skip("no perlio, no :utf8", 1) unless $Config{useperlio};
+    skip("no perlio, no :utf8", 1) unless (find PerlIO::Layer 'perlio');
     # now load a real-looking locale
     $ENV{LC_ALL} = ' .utf8';
     import( 'IN', 'locale' );
@@ -53,7 +53,7 @@ SKIP: {
 
 # and see if it sets the magic variables appropriately
 import( 'IN', ':crlf' );
-ok( $^H & $open::hint_bits, 
+ok( $^H & $open::hint_bits,
        'hint bits should be set in $^H after open import' );
 is( $^H{'open_IN'}, 'crlf', 'should have set crlf layer' );
 
@@ -72,7 +72,7 @@ is( ${^OPEN}, ":raw :crlf\0:raw :crlf",
 is( $^H{'open_IO'}, 'crlf', 'should record last layer set in %^H' );
 
 SKIP: {
-    skip("no perlio, no :utf8", 4) unless $Config{'useperlio'};
+    skip("no perlio, no :utf8", 4) unless (find PerlIO::Layer 'perlio');
 
     eval <<EOE;
     use open ':utf8';
index e61ffbd..d6bd374 100644 (file)
@@ -31,7 +31,7 @@ my $files = 0;
 foreach my $file (@w_files) {
 
     next if $file =~ /(~|\.orig|,v)$/;
-    next if $file =~ /perlio$/ && !$Config{useperlio};
+    next if $file =~ /perlio$/ && !(find PerlIO::Layer 'perlio');
 
     open F, "<$file" or die "Cannot open $file: $!\n" ;
     my $line = 0;
@@ -132,7 +132,7 @@ for (@prgs){
        foreach my $option (split(' ', $1)) {
            if ($option eq 'regex') { # allow regular expressions
                $option_regex = 1;
-           } 
+           }
            elsif ($option eq 'random') { # all lines match, but in any order
                $option_random = 1;
            }
index 4991d5e..3775290 100644 (file)
@@ -11,20 +11,20 @@ require "test.pl";
 plan(tests => 8);
 
 ok( binmode(STDERR),            'STDERR made binary' );
-if ($Config{useperlio}) {
+if (find PerlIO::Layer 'perlio') {
   ok( binmode(STDERR, ":unix"),   '  with unix discipline' );
 } else {
-  ok(1,   '  skip unix discipline for -Uuseperlio' );
+  ok(1,   '  skip unix discipline without PerlIO layers' );
 }
 ok( binmode(STDERR, ":raw"),    '  raw' );
 ok( binmode(STDERR, ":crlf"),   '  and crlf' );
 
 # If this one fails, we're in trouble.  So we just bail out.
 ok( binmode(STDOUT),            'STDOUT made binary' )      || exit(1);
-if ($Config{useperlio}) {
+if (find PerlIO::Layer 'perlio') {
   ok( binmode(STDOUT, ":unix"),   '  with unix discipline' );
 } else {
-  ok(1,   '  skip unix discipline for -Uuseperlio' );
+  ok(1,   '  skip unix discipline without PerlIO layers' );
 }
 ok( binmode(STDOUT, ":raw"),    '  raw' );
 ok( binmode(STDOUT, ":crlf"),   '  and crlf' );
index 20d278f..0968b36 100644 (file)
@@ -14,7 +14,7 @@ END {
  unlink($file);
 }
 
-if ($Config{useperlio}) {
+if (find PerlIO::Layer 'perlio') {
  plan(tests => 6);
  ok(open(FOO,">:crlf",$file));
  ok(print FOO 'a'.((('a' x 14).qq{\n}) x 2000) || close(FOO));