Annotation of embedaddon/php/tests/classes/iterators_008.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Ensure plain userspace superclass does not override special iterator behaviour on child class.
                      3: --FILE--
                      4: <?php
                      5: Class C {}
                      6: 
                      7: class D extends C implements Iterator {
                      8:   
                      9:   private $counter = 2;
                     10:   
                     11:   public function valid() {
                     12:     echo __METHOD__ . "($this->counter)\n";
                     13:     return $this->counter;    
                     14:   }
                     15:   
                     16:   public function next() {
                     17:     $this->counter--;   
                     18:     echo __METHOD__ . "($this->counter)\n";
                     19:   }
                     20:   
                     21:   public function rewind() {
                     22:     echo __METHOD__ . "($this->counter)\n";
                     23:   }
                     24:   
                     25:   public function current() {
                     26:     echo __METHOD__ . "($this->counter)\n";
                     27:   }
                     28:   
                     29:   public function key() {
                     30:     echo __METHOD__ . "($this->counter)\n";
                     31:   }
                     32:   
                     33: }
                     34: 
                     35: foreach (new D as $x) {}
                     36: ?>
                     37: --EXPECTF--
                     38: D::rewind(2)
                     39: D::valid(2)
                     40: D::current(2)
                     41: D::next(1)
                     42: D::valid(1)
                     43: D::current(1)
                     44: D::next(0)
                     45: D::valid(0)

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