Return to phar_buildfromiterator9.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / phar / tests / zip |
1.1 misho 1: --TEST-- 2: Phar::buildFromIterator() iterator, 1 file resource passed in 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: class myIterator implements Iterator 11: { 12: var $a; 13: function __construct(array $a) 14: { 15: $this->a = $a; 16: } 17: function next() { 18: echo "next\n"; 19: return next($this->a); 20: } 21: function current() { 22: echo "current\n"; 23: return current($this->a); 24: } 25: function key() { 26: echo "key\n"; 27: return key($this->a); 28: } 29: function valid() { 30: echo "valid\n"; 31: return current($this->a); 32: } 33: function rewind() { 34: echo "rewind\n"; 35: return reset($this->a); 36: } 37: } 38: try { 39: chdir(dirname(__FILE__)); 40: $phar = new Phar(dirname(__FILE__) . '/buildfromiterator.phar'); 41: var_dump($phar->buildFromIterator(new myIterator(array('a' => $a = fopen(basename(__FILE__, 'php') . 'phpt', 'r'))))); 42: fclose($a); 43: } catch (Exception $e) { 44: var_dump(get_class($e)); 45: echo $e->getMessage() . "\n"; 46: } 47: ?> 48: ===DONE=== 49: --CLEAN-- 50: <?php 51: unlink(dirname(__FILE__) . '/buildfromiterator.phar'); 52: __HALT_COMPILER(); 53: ?> 54: --EXPECTF-- 55: rewind 56: valid 57: current 58: key 59: next 60: valid 61: array(1) { 62: ["a"]=> 63: string(%d) "[stream]" 64: } 65: ===DONE===