/**
  * @test
  */
 function iterateOverNamedElements()
 {
     $reader = new XMLReaderStub('<r><a>1</a><a>2</a><b>c</b><a>3</a></r>');
     $it = new XMLElementIterator($reader, 'a');
     $this->assertEquals(null, $it->valid());
     $it->rewind();
     $this->assertEquals(true, $it->valid());
     $this->assertEquals('a', $it->current()->getName());
     $it->next();
     $this->assertEquals('a', $it->current()->getName());
     $it->next();
     $this->assertEquals('a', $it->current()->getName());
     $this->assertEquals('3', $it);
     $it->next();
     $this->assertEquals(false, $it->valid());
 }
 public function valid()
 {
     if (!($valid = parent::valid())) {
         return $valid;
     }
     return $this->reader->depth > $this->stopDepth;
 }