Skip to content
Snippets Groups Projects
Unverified Commit bd584c57 authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3094536 by stefanos.petrakis, mcdruid, alexpott: PHP 7.1 Warning: A...

Issue #3094536 by stefanos.petrakis, mcdruid, alexpott: PHP 7.1 Warning: A non-numeric value encountered in template_preprocess_pager()
parent f506b497
Branches
Tags
6 merge requests!7452Issue #1797438. HTML5 validation is preventing form submit and not fully...,!1012Issue #3226887: Hreflang on non-canonical content pages,!789Issue #3210310: Adjust Database API to remove deprecated Drupal 9 code in Drupal 10,!596Issue #3046532: deleting an entity reference field, used in a contextual view, makes the whole site unrecoverable,!496Issue #2463967: Use .user.ini file for PHP settings,!144Issue #2666286: Clean up menu_ui to conform to Drupal coding standards
......@@ -185,7 +185,7 @@ function pager_get_query_parameters() {
function template_preprocess_pager(&$variables) {
$element = $variables['pager']['#element'];
$parameters = $variables['pager']['#parameters'];
$quantity = $variables['pager']['#quantity'];
$quantity = empty($variables['pager']['#quantity']) ? 0 : $variables['pager']['#quantity'];
$route_name = $variables['pager']['#route_name'];
$route_parameters = isset($variables['pager']['#route_parameters']) ? $variables['pager']['#route_parameters'] : [];
......
<?php
namespace Drupal\Tests\system\Unit\Pager;
use Drupal\Core\DependencyInjection\ContainerBuilder;
use Drupal\Tests\UnitTestCase;
/**
* Tests pager preprocessing.
*
* @group system
*/
class PreprocessPagerTest extends UnitTestCase {
/**
* {@inheritdoc}
*/
protected function setUp() {
parent::setUp();
$pager_manager = $this->getMockBuilder('Drupal\Core\Pager\PagerManager')
->disableOriginalConstructor()
->getMock();
$pager = $this->getMockBuilder('Drupal\Core\Pager\Pager')
->disableOriginalConstructor()
->getMock();
$url_generator = $this->getMockBuilder('Drupal\Core\Routing\UrlGenerator')
->disableOriginalConstructor()
->getMock();
$pager->method('getTotalPages')->willReturn(2);
$pager->method('getCurrentPage')->willReturn(1);
$url_generator->method('generateFromRoute')->willReturn('');
$pager_manager->method('getPager')->willReturn($pager);
$pager_manager->method('getUpdatedParameters')->willReturn('');
$container = new ContainerBuilder();
$container->set('pager.manager', $pager_manager);
$container->set('url_generator', $url_generator);
\Drupal::setContainer($container);
}
/**
* Tests template_preprocess_pager() when an empty #quantity is passed.
*
* @covers ::template_preprocess_pager
*/
public function testQuantityNotSet() {
require_once $this->root . '/core/includes/pager.inc';
$variables = [
'pager' => [
'#element' => '',
'#parameters' => [],
'#quantity' => '',
'#route_name' => '',
'#tags' => '',
],
];
template_preprocess_pager($variables);
$this->assertEquals(['first', 'previous'], array_keys($variables['items']));
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment