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

1.1       misho       1: --TEST--
                      2: Phar: PharFileInfo::__construct
                      3: --SKIPIF--
                      4: <?php if (!extension_loaded("phar")) die("skip"); ?>
                      5: --INI--
                      6: phar.readonly=0
                      7: --FILE--
                      8: <?php
                      9: $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar';
                     10: $pname = 'phar://' . $fname;
                     11: 
                     12: try {
                     13: file_put_contents($fname, 'blah');
                     14: $a = new PharFileInfo($pname . '/oops');
                     15: } catch (Exception $e) {
                     16: echo $e->getMessage() . "\n";
                     17: unlink($fname);
                     18: }
                     19: 
                     20: $a = new PharFileInfo(array());
                     21: 
                     22: $a = new Phar($fname);
                     23: $a['a'] = 'hi';
                     24: $b = $a['a'];
                     25: 
                     26: try {
                     27: $a = new PharFileInfo($pname . '/oops/I/do/not/exist');
                     28: } catch (Exception $e) {
                     29: echo $e->getMessage() . "\n";
                     30: }
                     31: 
                     32: try {
                     33: $b->__construct('oops');
                     34: } catch (Exception $e) {
                     35: echo $e->getMessage() . "\n";
                     36: }
                     37: 
                     38: try {
                     39: $a = new PharFileInfo(__FILE__);
                     40: } catch (Exception $e) {
                     41: echo $e->getMessage() . "\n";
                     42: }
                     43: ?>
                     44: ===DONE===
                     45: --CLEAN--
                     46: <?php unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar'); ?>
                     47: --EXPECTF--
                     48: Cannot open phar file 'phar://%spharfileinfo_construct.phar/oops': internal corruption of phar "%spharfileinfo_construct.phar" (truncated entry)
                     49: 
                     50: Warning: PharFileInfo::__construct() expects parameter 1 to be %string, array given in %spharfileinfo_construct.php on line %d
                     51: Cannot access phar file entry '/oops/I/do/not/exist' in archive '%spharfileinfo_construct.phar'
                     52: Cannot call constructor twice
                     53: '%spharfileinfo_construct.php' is not a valid phar archive URL (must have at least phar://filename.phar)
                     54: ===DONE===

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