Annotation of embedaddon/php/ext/standard/tests/file/userwrapper.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Userstream unlink, rename, mkdir, rmdir, and url_stat.
                      3: --FILE--
                      4: <?php # vim:ft=php:
                      5: class test {
                      6:     function unlink($file) {
                      7:         print "Unlinking file: $file\n";
                      8:     }
                      9: 
                     10:     function rename($from, $to) {
                     11:         print "Renaming $from to $to\n";
                     12:     }
                     13: 
                     14:     function mkdir($directory, $mode, $options) {
                     15:         printf("Making directory: %s as %o%s\n", $directory, $mode, $options & STREAM_MKDIR_RECURSIVE ? " recursively" : "");
                     16:     }
                     17: 
                     18:     function rmdir($directory, $options) {
                     19:         print "Removing directory: $directory\n";
                     20:     }
                     21: 
                     22:     function url_stat($path, $options) {
                     23:                /* By printing out a notice that we are actively stating the file
                     24:                   then subsequently performing multiple stat operations on it
                     25:                   we effectively test the stat cache mechanism */
                     26:         print "Stating file: $path\n";
                     27:         return array('dev'=>1, 'ino'=>2, 'mode'=>0644, 'nlink'=>3,
                     28:                      'uid'=>100, 'gid'=>1000, 'rdev'=>-1, 'size'=>31337,
                     29:                      'atime'=>1234567890, 'mtime'=>1231231231, 'ctime'=>1234564564,
                     30:                      'blksize'=>-1, 'blocks'=>-1);
                     31:     }
                     32: }
                     33: 
                     34: stream_wrapper_register('test', 'test');
                     35: 
                     36: unlink('test://example.com/path/to/file');
                     37: rename('test://example.com/path/to/from', 'test://example.com/path/to/to');
                     38: /* We *want* this to fail and thus not output the watch statement */
                     39: @rename('test://example.com/path/to/from', 'http://example.com/path/to/to');
                     40: mkdir('test://example.com/path/to/directory', 0755);
                     41: rmdir('test://example.com/path/to/directory');
                     42: print_r(stat('test://example.com/path/to/file'));
                     43: echo "Filesize = " . filesize('test://example.com/path/to/file') . "\n";
                     44: echo "filemtime = " . filemtime('test://example.com/path/to/file') . "\n";
                     45: ?>
                     46: --EXPECT--
                     47: Unlinking file: test://example.com/path/to/file
                     48: Renaming test://example.com/path/to/from to test://example.com/path/to/to
                     49: Making directory: test://example.com/path/to/directory as 755
                     50: Removing directory: test://example.com/path/to/directory
                     51: Stating file: test://example.com/path/to/file
                     52: Array
                     53: (
                     54:     [0] => 1
                     55:     [1] => 2
                     56:     [2] => 420
                     57:     [3] => 3
                     58:     [4] => 100
                     59:     [5] => 1000
                     60:     [6] => -1
                     61:     [7] => 31337
                     62:     [8] => 1234567890
                     63:     [9] => 1231231231
                     64:     [10] => 1234564564
                     65:     [11] => -1
                     66:     [12] => -1
                     67:     [dev] => 1
                     68:     [ino] => 2
                     69:     [mode] => 420
                     70:     [nlink] => 3
                     71:     [uid] => 100
                     72:     [gid] => 1000
                     73:     [rdev] => -1
                     74:     [size] => 31337
                     75:     [atime] => 1234567890
                     76:     [mtime] => 1231231231
                     77:     [ctime] => 1234564564
                     78:     [blksize] => -1
                     79:     [blocks] => -1
                     80: )
                     81: Filesize = 31337
                     82: filemtime = 1231231231
                     83: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>