@@ -868,7 +868,7 @@ public function testMirrorCopiesLinks()
868
868
869
869
public function testMirrorCopiesLinkedDirectoryContents ()
870
870
{
871
- $ this ->markAsSkippedIfSymlinkIsMissing ();
871
+ $ this ->markAsSkippedIfSymlinkIsMissing (true );
872
872
873
873
$ sourcePath = $ this ->workspace .DIRECTORY_SEPARATOR .'source ' .DIRECTORY_SEPARATOR ;
874
874
@@ -888,7 +888,7 @@ public function testMirrorCopiesLinkedDirectoryContents()
888
888
889
889
public function testMirrorCopiesRelativeLinkedContents ()
890
890
{
891
- $ this ->markAsSkippedIfSymlinkIsMissing ();
891
+ $ this ->markAsSkippedIfSymlinkIsMissing (true );
892
892
893
893
$ sourcePath = $ this ->workspace .DIRECTORY_SEPARATOR .'source ' .DIRECTORY_SEPARATOR ;
894
894
$ oldPath = getcwd ();
@@ -1012,7 +1012,10 @@ private function getFileGroup($filepath)
1012
1012
$ this ->markTestSkipped ('Unable to retrieve file group name ' );
1013
1013
}
1014
1014
1015
- private function markAsSkippedIfSymlinkIsMissing ()
1015
+ /**
1016
+ * @param bool $relative Whether support for relative symlinks is required
1017
+ */
1018
+ private function markAsSkippedIfSymlinkIsMissing ($ relative = false )
1016
1019
{
1017
1020
if (!function_exists ('symlink ' )) {
1018
1021
$ this ->markTestSkipped ('symlink is not supported ' );
@@ -1021,6 +1024,11 @@ private function markAsSkippedIfSymlinkIsMissing()
1021
1024
if (false === self ::$ symlinkOnWindows ) {
1022
1025
$ this ->markTestSkipped ('symlink requires "Create symbolic links" privilege on Windows ' );
1023
1026
}
1027
+
1028
+ // https://bugs.php.net/bug.php?id=69473
1029
+ if ($ relative && '\\' === DIRECTORY_SEPARATOR && 1 === PHP_ZTS ) {
1030
+ $ this ->markTestSkipped ('symlink does not support relative paths on thread safe Windows PHP versions ' );
1031
+ }
1024
1032
}
1025
1033
1026
1034
private function markAsSkippedIfChmodIsMissing ()
0 commit comments