Annotation of embedaddon/php/ext/phar/tests/tar/phar_buildfromiterator9.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Phar::buildFromIterator() iterator, 1 file resource passed in tar-based
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.tar');
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.tar');
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===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>