X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2Fopen.t;h=55b955bd0fc861d7f8502293d5a37cd212da24b3;hb=14be35aaf1e66d9ee3b0b434256386e605d6024d;hp=50292929c85e76e8223e478637135f2324a2d33e;hpb=7f17c5141d7d488a184915d744f3ef35257927e7;p=p5sagit%2Fp5-mst-13.2.git diff --git a/lib/open.t b/lib/open.t index 5029292..55b955b 100644 --- a/lib/open.t +++ b/lib/open.t @@ -7,7 +7,7 @@ BEGIN { require Config; import Config; } -use Test::More tests => 16; +use Test::More tests => 17; # open::import expects 'open' as its first argument, but it clashes with open() sub import { @@ -45,6 +45,7 @@ like( $warn, qr/Unknown PerlIO layer/, SKIP: { skip("no perlio, no :utf8", 1) unless (find PerlIO::Layer 'perlio'); + skip("no Encode for locale layer", 1) unless eval { require Encode }; # now load a real-looking locale $ENV{LC_ALL} = ' .utf8'; import( 'IN', 'locale' ); @@ -171,6 +172,16 @@ EOE "checking syswrite() output on :utf8 streams by reading it back in"); } +SKIP: { + skip("no perlio", 1) unless (find PerlIO::Layer 'perlio'); + use open IN => ':non-existent'; + eval { + require Symbol; # Anything that exists but we havn't loaded + }; + like($@, qr/Can't locate Symbol|Recursive call/i, + "test for an endless loop in PerlIO_find_layer"); +} + END { 1 while unlink "utf8"; 1 while unlink "a";