Issue #3464271 by mondrake, smustgrave: Method getMockForAbstractClass() of class PHPUnit\Framework\TestCase is deprecated in PHPUnit 10 - replace in class ControllerBaseTest

merge-requests/9011/head^2
catch 2024-08-07 09:53:40 +09:00
parent 5374786d8d
commit 5ac4f96a9c
3 changed files with 16 additions and 11 deletions

View File

@ -2550,12 +2550,6 @@ $ignoreErrors[] = [
'count' => 1,
'path' => __DIR__ . '/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityStorageTest.php',
];
$ignoreErrors[] = [
// identifier: method.deprecated
'message' => '#^Call to deprecated method getMockForAbstractClass\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\.$#',
'count' => 1,
'path' => __DIR__ . '/tests/Drupal/Tests/Core/Controller/ControllerBaseTest.php',
];
$ignoreErrors[] = [
// identifier: method.deprecated
'message' => '#^Call to deprecated method getMockForAbstractClass\\(\\) of class PHPUnit\\\\Framework\\\\MockObject\\\\MockBuilder\\.$#',

View File

@ -15,10 +15,8 @@ class ControllerBaseTest extends UnitTestCase {
/**
* The tested controller base class.
*
* @var \Drupal\Core\Controller\ControllerBase|\PHPUnit\Framework\MockObject\MockObject
*/
protected $controllerBase;
protected StubControllerBase $controllerBase;
/**
* {@inheritdoc}
@ -26,7 +24,7 @@ class ControllerBaseTest extends UnitTestCase {
protected function setUp(): void {
parent::setUp();
$this->controllerBase = $this->getMockForAbstractClass('Drupal\Core\Controller\ControllerBase');
$this->controllerBase = new StubControllerBase();
}
/**
@ -49,7 +47,7 @@ class ControllerBaseTest extends UnitTestCase {
->willReturn($config_factory);
\Drupal::setContainer($container);
$config_method = new \ReflectionMethod('Drupal\Core\Controller\ControllerBase', 'config');
$config_method = new \ReflectionMethod(StubControllerBase::class, 'config');
// Call config twice to ensure that the container is just called once.
$config = $config_method->invoke($this->controllerBase, 'config_name');

View File

@ -0,0 +1,13 @@
<?php
declare(strict_types=1);
namespace Drupal\Tests\Core\Controller;
use Drupal\Core\Controller\ControllerBase;
/**
* Stubs ControllerBase.
*/
class StubControllerBase extends ControllerBase {
}