public function testSeekableIterator() { $list = new Tag\ItemList(); $values = array('foo', 'bar', 'baz'); foreach ($values as $value) { $list[] = $this->_getItem($value); } foreach ($list as $key => $item) { $this->assertEquals($item->getTitle(), $values[$key]); } $list->seek(2); $this->assertEquals($list->current()->getTitle(), $values[2]); }
public function testSeekableIterator() { $list = new Tag\ItemList(); $values = array('foo', 'bar', 'baz'); foreach ($values as $value) { $list[] = $this->_getItem($value); } foreach ($list as $key => $item) { $this->assertEquals($item->getTitle(), $values[$key]); } $list->seek(2); $this->assertEquals($list->current()->getTitle(), $values[2]); try { $list->seek(3); $this->fail('An expected OutOfBoundsException was not raised'); } catch (\OutOfBoundsException $e) { $this->assertEquals($e->getMessage(), 'Invalid seek position'); } }