Skip to content

Commit c49fb83

Browse files
committed
Extract test helper function for SeCreateSymbolicLinkPrivilege check
1 parent f1bf058 commit c49fb83

File tree

6 files changed

+16
-34
lines changed

6 files changed

+16
-34
lines changed

ext/spl/tests/bug68825.phpt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,8 @@ Bug #68825 (Exception in DirectoryIterator::getLinkTarget())
33
--SKIPIF--
44
<?php
55
if (PHP_OS_FAMILY === 'Windows') {
6-
$fn = "bug68825.lnk";
7-
$ret = exec("mklink $fn " . __FILE__ .' 2>&1', $out);
8-
@unlink($fn);
9-
if (strpos($ret, 'privilege')) {
10-
die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
11-
}
6+
include_once __DIR__ . '/../../standard/tests/file/windows_links/common.inc';
7+
skipIfSeCreateSymbolicLinkPrivilegeIsDisabled(__FILE__);
128
}
139
?>
1410
--FILE--

ext/standard/tests/file/bug47767.phpt

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,8 @@ Venkat Raman Don
77
if(substr(PHP_OS, 0, 3) != 'WIN' ) {
88
die('skip windows only test');
99
}
10-
if(PHP_WINDOWS_VERSION_MAJOR < 6) {
11-
die('skip windows version 6.0+ only test');
12-
}
13-
14-
$fn = "bug47767.lnk";
15-
$ret = exec("mklink $fn " . __FILE__ .' 2>&1', $out);
16-
@unlink($fn);
17-
if (strpos($ret, 'privilege')) {
18-
die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
19-
}
10+
include_once __DIR__ . '/windows_links/common.inc';
11+
skipIfSeCreateSymbolicLinkPrivilegeIsDisabled(__FILE__);
2012
?>
2113
--FILE--
2214
<?php

ext/standard/tests/file/rename_variation6-win32.phpt

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,8 @@ Test rename() function: usage variations-6
33
--SKIPIF--
44
<?php
55
if (substr(PHP_OS, 0, 3) != 'WIN') die('skip.. for Windows');
6-
if (!function_exists("symlink")) die("skip symlinks are not supported");
7-
$fn = "rename_variation6tmp.lnk";
8-
$ret = exec("mklink $fn " . __FILE__ .' 2>&1', $out);
9-
@unlink($fn);
10-
if (strpos($ret, 'privilege')) {
11-
die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
12-
}
6+
include_once __DIR__ . '/windows_links/common.inc';
7+
skipIfSeCreateSymbolicLinkPrivilegeIsDisabled(__FILE__);
138
?>
149
--FILE--
1510
<?php

ext/standard/tests/file/windows_links/bug48746_2.phpt

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,7 @@ if(substr(PHP_OS, 0, 3) != 'WIN' ) {
88
die('skip windows only test');
99
}
1010
include_once __DIR__ . '/common.inc';
11-
$ret = exec('mklink bug48746_tmp.lnk ' . __FILE__ .' 2>&1', $out);
12-
if (strpos($ret, 'privilege')) {
13-
die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
14-
}
15-
unlink('bug48746_tmp.lnk');
11+
skipIfSeCreateSymbolicLinkPrivilegeIsDisabled(__FILE__);
1612
?>
1713
--FILE--
1814
<?php

ext/standard/tests/file/windows_links/bug73962.phpt

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,7 @@ if(substr(PHP_OS, 0, 3) != 'WIN' ) {
66
die('skip windows only test');
77
}
88
include_once __DIR__ . '/common.inc';
9-
$ret = exec('mklink bug73962_tmp.lnk ' . __FILE__ .' 2>&1', $out);
10-
if (strpos($ret, 'privilege')) {
11-
die('skip. SeCreateSymbolicLinkPrivilege not enable for this user.');
12-
}
13-
unlink('bug73962_tmp.lnk');
9+
skipIfSeCreateSymbolicLinkPrivilegeIsDisabled(__FILE__);
1410
?>
1511
--FILE--
1612
<?php

ext/standard/tests/file/windows_links/common.inc

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,11 @@ function get_mountvol() {
2020
return "$sysroot\\System32\\mountvol.exe";
2121
}
2222

23-
?>
23+
function skipIfSeCreateSymbolicLinkPrivilegeIsDisabled(string $filename) {
24+
$ln = "$filename.lnk";
25+
$ret = exec("mklink $ln " . __FILE__ .' 2>&1', $out);
26+
@unlink($ln);
27+
if (strpos($ret, 'privilege') !== false) {
28+
die('skip SeCreateSymbolicLinkPrivilege not enabled');
29+
}
30+
}

0 commit comments

Comments
 (0)