Exemplo n.º 1
0
 /**
  * Tests the executeCountQuery method with a set offset.
  *
  * @see \Drupal\views\Plugin\views\pager\PagerPluginBase::executeCountQuery()
  */
 public function testExecuteCountQueryWithOffset()
 {
     $statement = $this->getMock('\\Drupal\\Tests\\views\\Unit\\Plugin\\pager\\TestStatementInterface');
     $statement->expects($this->once())->method('fetchField')->will($this->returnValue(3));
     $query = $this->getMockBuilder('\\Drupal\\Core\\Database\\Query\\Select')->disableOriginalConstructor()->getMock();
     $query->expects($this->once())->method('execute')->will($this->returnValue($statement));
     $this->pager->setOffset(2);
     $this->assertEquals(1, $this->pager->executeCountQuery($query));
 }
Exemplo n.º 2
0
 /**
  * Tests a counter field on the second page.
  *
  * @param int $i
  *   The row index to test.
  *
  * @dataProvider providerRowIndexes
  */
 public function testCounterSecondPage($i)
 {
     $offset = 3;
     // Setup a pager on the second page.
     $this->pager->setOffset($offset);
     $items_per_page = 5;
     $this->pager->setItemsPerPage($items_per_page);
     $current_page = 1;
     $this->pager->setCurrentPage($current_page);
     $rand_start = rand(5, 10);
     $counter_handler = new Counter(array(), 'counter', $this->definition);
     $options = array('counter_start' => $rand_start);
     $counter_handler->init($this->view, $this->display, $options);
     $this->view->row_index = $i;
     $expected = $items_per_page + $offset + $rand_start + $i;
     $counter = $counter_handler->getValue($this->testData[$i]);
     $this->assertEquals($expected, $counter, 'The expected number matches with the counter number');
     $counter = $this->renderCounter($counter_handler, $this->testData[$i]);
     $this->assertEquals($expected, $counter, 'The expected number matches with the rendered number');
 }
Exemplo n.º 3
0
 /**
  * Initialize the pager
  *
  * Like style initialization, pager initialization is held until late
  * to allow for overrides.
  */
 public function initPager()
 {
     if (!isset($this->pager)) {
         $this->pager = $this->display_handler->getPlugin('pager');
         if ($this->pager->usePager()) {
             $this->pager->setCurrentPage($this->current_page);
         }
         // These overrides may have been set earlier via $view->set_*
         // functions.
         if (isset($this->items_per_page)) {
             $this->pager->setItemsPerPage($this->items_per_page);
         }
         if (isset($this->offset)) {
             $this->pager->setOffset($this->offset);
         }
     }
 }