ExtUtils::MakeMaker 6.55_02
[p5sagit/p5-mst-13.2.git] / lib / ExtUtils / t / MM_Cygwin.t
index 7ce380c..d952188 100644 (file)
@@ -100,34 +100,29 @@ like( $res, qr/pure_all.*foo.*foo.1/s, '... should add MAN3PODS targets' );
 
 # Tests for correct handling of maybe_command in /cygdrive/*
 # and c:/*.  $ENV{COMSPEC}, if it exists, should always be executable.
-
 SKIP: {
-    my $comspec = $ENV{COMSPEC};
-
-    skip("\$ENV{COMSPEC} does not exist", 3) unless $comspec;
+    skip "Needs Cygwin::win_to_posix_path()", 2 unless defined &Cygwin::win_to_posix_path;
 
-    # Convert into cygwin-flavoured '/cygdrive/c/...' path.
-    # Is there a better way than direct munging?  A File::*
-    # module perhaps?
+    SKIP: {
+        my $comspec = $ENV{COMSPEC};
+        skip(q[$ENV{COMSPEC} does not exist], 1) unless $comspec;
 
-    $comspec =~ s{^(\w):}  {/cygdrive/\l$1}x;
-    $comspec =~ s{\\    }  {/}gx;
+        $comspec = Cygwin::win_to_posix_path($comspec);
 
-    ok(MM->maybe_command($comspec),"$comspec should be executable");
-
-    # /cygdrive/c should *never* be executable, it's a directory. 
+        ok(MM->maybe_command($comspec), qq{'$comspec' should be executable"});
+    }
 
-    ok(! MM->maybe_command(q{/cygdrive/c}), 
-       qq{/cygdrive/c should never be executable}
-    );
+    # 'C:/' should *never* be executable, it's a directory.
+    {
+        my $cdrive = Cygwin::win_to_posix_path("C:/");
 
-    # Our copy of Perl (with a unix-path) should always be executable.
+        ok(!MM->maybe_command($cdrive), qq{'$cdrive' should never be executable});
+    }
+}
 
-    ok(MM->maybe_command($Config{perlpath}),
-       qq{$Config{perlpath} should be executable}
-    );
+# Our copy of Perl (with a unix-path) should always be executable.
+ok(MM->maybe_command($Config{perlpath}), qq{'$Config{perlpath}' should be executable});
 
-}
 
 package FakeOut;