Annotation of embedaddon/php/ext/spl/tests/iterator_028.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: SPL: RecursiveIteratorIterator and setMaxDepth()
                      3: --FILE--
                      4: <?php
                      5: 
                      6: $ar = array(1, 2, array(31, 32, array(331, array(3321, array(33221)))), 4);
                      7: 
                      8: $it = new RecursiveIteratorIterator(new RecursiveArrayIterator($ar));
                      9: 
                     10: echo "===?===\n";
                     11: var_dump($it->getMaxDepth());
                     12: foreach($it as $v) echo $it->getDepth() . ": $v\n";
                     13: 
                     14: echo "===2===\n";
                     15: $it->setMaxDepth(2);
                     16: var_dump($it->getMaxDepth());
                     17: foreach($it as $v) echo $it->getDepth() . ": $v\n";
                     18: 
                     19: echo "===X===\n";
                     20: $it->setMaxDepth();
                     21: var_dump($it->getMaxDepth());
                     22: foreach($it as $v) echo $it->getDepth() . ": $v\n";
                     23: 
                     24: echo "===3===\n";
                     25: $it->setMaxDepth(3);
                     26: var_dump($it->getMaxDepth());
                     27: foreach($it as $v) echo $it->getDepth() . ": $v\n";
                     28: 
                     29: echo "===5===\n";
                     30: $it->setMaxDepth(5);
                     31: var_dump($it->getMaxDepth());
                     32: foreach($it as $v) echo $it->getDepth() . ": $v\n";
                     33: 
                     34: echo "===0===\n";
                     35: $it->setMaxDepth(0);
                     36: var_dump($it->getMaxDepth());
                     37: foreach($it as $v) echo $it->getDepth() . ": $v\n";
                     38: 
                     39: echo "===-1===\n";
                     40: $it->setMaxDepth(-1);
                     41: var_dump($it->getMaxDepth());
                     42: try
                     43: {
                     44:        $it->setMaxDepth(4);
                     45:        $it->setMaxDepth(-2);
                     46: }
                     47: catch(Exception $e)
                     48: {
                     49:        var_dump($e->getMessage());
                     50: }
                     51: var_dump($it->getMaxDepth());
                     52: ?>
                     53: ===DONE===
                     54: <?php exit(0); ?>
                     55: --EXPECT--
                     56: ===?===
                     57: bool(false)
                     58: 0: 1
                     59: 0: 2
                     60: 1: 31
                     61: 1: 32
                     62: 2: 331
                     63: 3: 3321
                     64: 4: 33221
                     65: 0: 4
                     66: ===2===
                     67: int(2)
                     68: 0: 1
                     69: 0: 2
                     70: 1: 31
                     71: 1: 32
                     72: 2: 331
                     73: 0: 4
                     74: ===X===
                     75: bool(false)
                     76: 0: 1
                     77: 0: 2
                     78: 1: 31
                     79: 1: 32
                     80: 2: 331
                     81: 3: 3321
                     82: 4: 33221
                     83: 0: 4
                     84: ===3===
                     85: int(3)
                     86: 0: 1
                     87: 0: 2
                     88: 1: 31
                     89: 1: 32
                     90: 2: 331
                     91: 3: 3321
                     92: 0: 4
                     93: ===5===
                     94: int(5)
                     95: 0: 1
                     96: 0: 2
                     97: 1: 31
                     98: 1: 32
                     99: 2: 331
                    100: 3: 3321
                    101: 4: 33221
                    102: 0: 4
                    103: ===0===
                    104: int(0)
                    105: 0: 1
                    106: 0: 2
                    107: 0: 4
                    108: ===-1===
                    109: bool(false)
                    110: string(33) "Parameter max_depth must be >= -1"
                    111: int(4)
                    112: ===DONE===

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