1#!./perl -w 2 3BEGIN { 4 chdir 't' if -d 't'; 5 @INC = '../lib'; 6 require './test.pl'; 7} 8 9plan tests => 22; 10 11unless (eval { 12 require File::Path; 13 File::Path::rmtree('blurfl'); 14 1 15}) { 16 diag("$0 may fail if its temporary directory remains from a previous run"); 17 diag("Attempted to load File::Path to delete directory t/blurfl - error was\n$@"); 18 diag("\nIf you have problems, please manually delete t/blurfl"); 19} 20 21# tests 3 and 7 rather naughtily expect English error messages 22$ENV{'LC_ALL'} = 'C'; 23$ENV{LANGUAGE} = 'C'; # GNU locale extension 24 25ok(mkdir('blurfl',0777)); 26ok(!mkdir('blurfl',0777)); 27ok($!{EEXIST} || $! =~ /cannot move|exist|denied|unknown/i); 28ok(-d 'blurfl'); 29ok(rmdir('blurfl')); 30ok(!rmdir('blurfl')); 31ok($!{ENOENT} || $! =~ /cannot find|such|exist|not found|not a directory|unknown/i); 32ok(mkdir('blurfl')); 33ok(rmdir('blurfl')); 34 35# trailing slashes will be removed before the system call to mkdir 36ok(mkdir('blurfl///')); 37ok(-d 'blurfl'); 38ok(rmdir('blurfl///')); 39ok(!-d 'blurfl'); 40 41# test default argument 42 43$_ = 'blurfl'; 44ok(mkdir); 45ok(-d); 46ok(rmdir); 47ok(!-d); 48$_ = 'lfrulb'; 49 50{ 51 no warnings 'experimental::lexical_topic'; 52 my $_ = 'blurfl'; 53 ok(mkdir); 54 ok(-d); 55 ok(-d 'blurfl'); 56 ok(!-d 'lfrulb'); 57 ok(rmdir); 58} 59