diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-03-14 05:42:27 +0000 |
---|---|---|
committer | <> | 2013-04-03 16:25:08 +0000 |
commit | c4dd7a1a684490673e25aaf4fabec5df138854c4 (patch) | |
tree | 4d57c44caae4480efff02b90b9be86f44bf25409 /ext/standard/tests/file/userwrapper.phpt | |
download | php2-master.tar.gz |
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/standard/tests/file/userwrapper.phpt')
-rw-r--r-- | ext/standard/tests/file/userwrapper.phpt | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/ext/standard/tests/file/userwrapper.phpt b/ext/standard/tests/file/userwrapper.phpt new file mode 100644 index 0000000..717e73c --- /dev/null +++ b/ext/standard/tests/file/userwrapper.phpt @@ -0,0 +1,83 @@ +--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 + |