Annotation of embedaddon/php/ext/phar/tests/zip/phar_buildfromiterator6.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Phar::buildFromIterator() iterator, key is int zip-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.zip');
41: var_dump($phar->buildFromIterator(new myIterator(array(basename(__FILE__, 'php') . 'phpt'))));
42: } catch (Exception $e) {
43: var_dump(get_class($e));
44: echo $e->getMessage() . "\n";
45: }
46: ?>
47: ===DONE===
48: --CLEAN--
49: <?php
50: unlink(dirname(__FILE__) . '/buildfromiterator.phar.zip');
51: __HALT_COMPILER();
52: ?>
53: --EXPECTF--
54: rewind
55: valid
56: current
57: key
58: %s(24) "UnexpectedValueException"
59: Iterator myIterator returned an invalid key (must return a string)
60: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>