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

1.1       misho       1: --TEST--
                      2: Phar::setStub()
                      3: --SKIPIF--
                      4: <?php if (!extension_loaded("phar")) die("skip"); ?>
                      5: --INI--
                      6: phar.require_hash=0
                      7: phar.readonly=0
                      8: --FILE--
                      9: <?php
                     10: $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar.php';
                     11: $pname = 'phar://' . $fname;
                     12: $file = '<?php echo "first stub\n"; __HALT_COMPILER(); ?>';
                     13: 
                     14: $files = array();
                     15: $files['a'] = 'a';
                     16: $files['b'] = 'b';
                     17: $files['c'] = 'c';
                     18: 
                     19: include 'files/phar_test.inc';
                     20: 
                     21: $file = '<?php echo "first stub\n"; __HALT_COMPILER(); ?>';
                     22: $fp = fopen($fname, 'rb');
                     23: //// 1
                     24: echo fread($fp, strlen($file)) . "\n";
                     25: fclose($fp);
                     26: $phar = new Phar($fname);
                     27: $file = '<?php echo "second stub\n"; __HALT_COMPILER(); ?>';
                     28: 
                     29: //// 2
                     30: $phar->setStub($file);
                     31: $fp = fopen($fname, 'rb');
                     32: echo fread($fp, strlen($file)) . "\n";
                     33: fclose($fp);
                     34: 
                     35: $fname2 = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phartmp.php';
                     36: $file = b'<?php echo "third stub\n"; __HALT_COMPILER(); ?>';
                     37: $fp = fopen($fname2, 'wb');
                     38: fwrite($fp, $file);
                     39: fclose($fp);
                     40: $fp = fopen($fname2, 'rb');
                     41: 
                     42: //// 3
                     43: $phar->setStub($fp);
                     44: fclose($fp);
                     45: 
                     46: $fp = fopen($fname, 'rb');
                     47: echo fread($fp, strlen($file)) . "\n";
                     48: fclose($fp);
                     49: 
                     50: $fp = fopen($fname2, 'ab');
                     51: fwrite($fp, b'booya');
                     52: fclose($fp);
                     53: echo file_get_contents($fname2) . "\n";
                     54: 
                     55: $fp = fopen($fname2, 'rb');
                     56: 
                     57: //// 4
                     58: $phar->setStub($fp, strlen($file));
                     59: fclose($fp);
                     60: 
                     61: $fp = fopen($fname, 'rb');
                     62: echo fread($fp, strlen($file)) . "\n";
                     63: if (fread($fp, strlen('booya')) == 'booya') {
                     64:        echo 'failed - copied booya';
                     65: }
                     66: fclose($fp);
                     67: $phar['testing'] = 'hi';
                     68: 
                     69: // ensure stub is not overwritten
                     70: $fp = fopen($fname, 'rb');
                     71: echo fread($fp, strlen($file)) . "\n";
                     72: if (fread($fp, strlen('booya')) == 'booya') {
                     73:        echo 'failed - copied booya';
                     74: }
                     75: fclose($fp);
                     76: 
                     77: ?>
                     78: ===DONE===
                     79: --CLEAN--
                     80: <?php 
                     81: unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar.php');
                     82: unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phartmp.php');
                     83: __HALT_COMPILER();
                     84: ?>
                     85: --EXPECT--
                     86: <?php echo "first stub\n"; __HALT_COMPILER(); ?>
                     87: <?php echo "second stub\n"; __HALT_COMPILER(); ?>
                     88: <?php echo "third stub\n"; __HALT_COMPILER(); ?>
                     89: <?php echo "third stub\n"; __HALT_COMPILER(); ?>booya
                     90: <?php echo "third stub\n"; __HALT_COMPILER(); ?>
                     91: <?php echo "third stub\n"; __HALT_COMPILER(); ?>
                     92: ===DONE===

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