Annotation of embedaddon/php/ext/phar/tests/stat2_5.3.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Phar: test stat function interceptions and is_file/is_link edge cases (PHP 5.3+)
                      3: --SKIPIF--
                      4: <?php if (!extension_loaded("phar")) die("skip");?>
                      5: <?php if (substr(phpversion(), 0, 3) == '5.2') die("skip PHP 5.3+ required for this test");?>
                      6: --INI--
                      7: phar.readonly=0
                      8: phar.require_hash=0
                      9: --FILE--
                     10: <?php
                     11: Phar::interceptFileFuncs();
                     12: is_file();
                     13: is_link();
                     14: var_dump(is_file(__FILE__));
                     15: 
                     16: $fname2 = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.tar';
                     17: $fname3 = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar.tar';
                     18: copy(dirname(__FILE__) . '/tar/files/links.tar', $fname2);
                     19: $a = new PharData($fname2);
                     20: $b = $a->convertToExecutable(Phar::TAR, Phar::NONE, '.3.phar.tar');
                     21: unset($a);
                     22: Phar::unlinkArchive($fname2);
                     23: $b['foo/stat.php'] = '<?php
                     24: echo "is_link\n";
                     25: var_dump(is_link("./stat.php"),is_file("./stat.php"), is_link("./oops"), is_file("./oops"));
                     26: var_dump(is_link("testit/link"), filetype("testit/link"), filetype("testit"), is_file("testit/link"));
                     27: echo "not found\n";
                     28: var_dump(is_link("notfound"));
                     29: echo "dir\n";
                     30: var_dump(is_dir("./bar"), is_file("foo/bar/blah"));
                     31: ?>';
                     32: $b->addEmptyDir('foo/bar/blah');
                     33: $b->setStub('<?php
                     34: include "phar://" . __FILE__ . "/foo/stat.php";
                     35: __HALT_COMPILER();');
                     36: include $fname3;
                     37: ?>
                     38: ===DONE===
                     39: --CLEAN--
                     40: <?php unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar.tar'); ?>
                     41: <?php unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.tar'); ?>
                     42: --EXPECTF--
                     43: Warning: is_file() expects exactly 1 parameter, 0 given in %sstat2_5.3.php on line %d
                     44: 
                     45: Warning: is_link() expects exactly 1 parameter, 0 given in %sstat2_5.3.php on line %d
                     46: bool(true)
                     47: is_link
                     48: bool(false)
                     49: bool(true)
                     50: bool(false)
                     51: bool(false)
                     52: bool(true)
                     53: string(4) "link"
                     54: string(3) "dir"
                     55: bool(true)
                     56: not found
                     57: bool(false)
                     58: dir
                     59: bool(true)
                     60: bool(false)
                     61: ===DONE===

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