1
0
mirror of https://github.com/php/php-src.git synced 2026-04-14 03:22:58 +02:00
Files
archived-php-src/ext/standard/tests/file/userwrapper.phpt
Peter Kokot b746e69887 Sync leading and final newlines in *.phpt sections
This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines in all
*.phpt sections.

According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
2018-10-15 04:32:30 +02:00

83 lines
2.5 KiB
PHP

--TEST--
Userstream unlink, rename, mkdir, rmdir, and url_stat.
--FILE--
<?php # vim:ft=php:
class test {
function unlink($file) {
print "Unlinking file: $file\n";
}
function rename($from, $to) {
print "Renaming $from to $to\n";
}
function mkdir($directory, $mode, $options) {
printf("Making directory: %s as %o%s\n", $directory, $mode, $options & STREAM_MKDIR_RECURSIVE ? " recursively" : "");
}
function rmdir($directory, $options) {
print "Removing directory: $directory\n";
}
function url_stat($path, $options) {
/* By printing out a notice that we are actively stating the file
then subsequently performing multiple stat operations on it
we effectively test the stat cache mechanism */
print "Stating file: $path\n";
return array('dev'=>1, 'ino'=>2, 'mode'=>0644, 'nlink'=>3,
'uid'=>100, 'gid'=>1000, 'rdev'=>-1, 'size'=>31337,
'atime'=>1234567890, 'mtime'=>1231231231, 'ctime'=>1234564564,
'blksize'=>-1, 'blocks'=>-1);
}
}
stream_wrapper_register('test', 'test');
unlink('test://example.com/path/to/file');
rename('test://example.com/path/to/from', 'test://example.com/path/to/to');
/* We *want* this to fail and thus not output the watch statement */
@rename('test://example.com/path/to/from', 'http://example.com/path/to/to');
mkdir('test://example.com/path/to/directory', 0755);
rmdir('test://example.com/path/to/directory');
print_r(stat('test://example.com/path/to/file'));
echo "Filesize = " . filesize('test://example.com/path/to/file') . "\n";
echo "filemtime = " . filemtime('test://example.com/path/to/file') . "\n";
?>
--EXPECT--
Unlinking file: test://example.com/path/to/file
Renaming test://example.com/path/to/from to test://example.com/path/to/to
Making directory: test://example.com/path/to/directory as 755
Removing directory: test://example.com/path/to/directory
Stating file: test://example.com/path/to/file
Array
(
[0] => 1
[1] => 2
[2] => 420
[3] => 3
[4] => 100
[5] => 1000
[6] => -1
[7] => 31337
[8] => 1234567890
[9] => 1231231231
[10] => 1234564564
[11] => -1
[12] => -1
[dev] => 1
[ino] => 2
[mode] => 420
[nlink] => 3
[uid] => 100
[gid] => 1000
[rdev] => -1
[size] => 31337
[atime] => 1234567890
[mtime] => 1231231231
[ctime] => 1234564564
[blksize] => -1
[blocks] => -1
)
Filesize = 31337
filemtime = 1231231231