/** * Paginates the results using a pagination instance. * * @access public * @param \mako\pagination\Pagination $pagination Pagination instance * @return \mako\database\query\Query */ public function paginate(Pagination $pagination) { return $this->limit($pagination->limit())->offset($pagination->offset()); }
/** * */ public function testOffset() { $pagination = new Pagination(200, 20, 1); $this->assertEquals(0, $pagination->offset()); // $pagination = new Pagination(200, 20, 2); $this->assertEquals(20, $pagination->offset()); }
/** * */ public function testOffsetWithConfig() { $request = $this->getRequest(); $request->shouldReceive('get')->once()->with('page', 1)->andReturn(1); $pagination = new Pagination($request, 200); $this->assertEquals(0, $pagination->offset()); // $request = $this->getRequest(); $request->shouldReceive('get')->once()->with('page', 1)->andReturn(2); $pagination = new Pagination($request, 200, ['items_per_page' => 10]); $this->assertEquals(10, $pagination->offset()); }