/**
* @test
*/
public function iteratorMethodsAreCorrectlyImplemented()
{
$array1 = ['foo' => 'Foo1', 'bar' => 'Bar1'];
$array2 = ['foo' => 'Foo2', 'bar' => 'Bar2'];
$this->assertEquals($array1, $this->queryResult->current());
$this->assertTrue($this->queryResult->valid());
$this->queryResult->next();
$this->assertEquals($array2, $this->queryResult->current());
$this->assertTrue($this->queryResult->valid());
$this->assertEquals(1, $this->queryResult->key());
$this->queryResult->next();
$this->assertFalse($this->queryResult->current());
$this->assertFalse($this->queryResult->valid());
$this->assertNull($this->queryResult->key());
$this->queryResult->rewind();
$this->assertEquals(0, $this->queryResult->key());
$this->assertEquals($array1, $this->queryResult->current());
}