function testIterateWithPaginationNonZeroOffset() { $data = array(array('x' => 'a'), array('x' => 'b'), array('x' => 'c'), array('x' => 'd'), array('x' => 'e')); $iterator = new lmbCollection($data); $iterator->paginate($offset = 2, $limit = 2); $iterator->rewind(); $dataspace1 = $iterator->current(); $this->assertEqual($dataspace1->export(), array('x' => 'c')); $iterator->next(); $dataspace2 = $iterator->current(); $this->assertEqual($dataspace2->export(), array('x' => 'd')); }
function testSortByKeys() { $item1 = new lmbSet(array(1)); $item2 = new lmbSet(array(2)); $iterator = new lmbCollection(); $this->assertTrue($iterator->isEmpty()); $iterator->add($item1, 1); $this->assertFalse($iterator->isEmpty()); $iterator->add($item2, 0); $iterator->sortByKeys(); $iterator->rewind(); $this->assertTrue($iterator->valid()); $this->assertEqual($iterator->current(), $item2); $iterator->next(); $this->assertEqual($iterator->current(), $item1); }