public function testResultIteration()
 {
     $rsm = new ResultSetMapping();
     $rsm->addEntityResult('Doctrine\\Tests\\Models\\CMS\\CmsUser', 'u');
     $rsm->addFieldResult('u', 'u__id', 'id');
     $rsm->addFieldResult('u', 'u__name', 'name');
     // Faked result set
     $resultSet = array(array('u__id' => '1', 'u__name' => 'romanb'), array('u__id' => '2', 'u__name' => 'jwage'));
     $stmt = new HydratorMockStatement($resultSet);
     $hydrator = new \Doctrine\ORM\Internal\Hydration\ArrayHydrator($this->_em);
     $iterableResult = $hydrator->iterate($stmt, $rsm);
     $rowNum = 0;
     while (($row = $iterableResult->next()) !== false) {
         $this->assertEquals(1, count($row));
         $this->assertTrue(is_array($row[0]));
         if ($rowNum == 0) {
             $this->assertEquals(1, $row[0]['id']);
             $this->assertEquals('romanb', $row[0]['name']);
         } else {
             if ($rowNum == 1) {
                 $this->assertEquals(2, $row[0]['id']);
                 $this->assertEquals('jwage', $row[0]['name']);
             }
         }
         ++$rowNum;
     }
 }