diff --git a/core/.phpstan-baseline.php b/core/.phpstan-baseline.php index c62f3ab5c5d..2a9e9199916 100644 --- a/core/.phpstan-baseline.php +++ b/core/.phpstan-baseline.php @@ -61473,12 +61473,6 @@ $ignoreErrors[] = [ 'count' => 2, 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Entity/EntityStorageBaseTest.php', ]; -$ignoreErrors[] = [ - // identifier: method.deprecated - 'message' => '#^Call to deprecated method getMockForAbstractClass\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\.$#', - 'count' => 2, - 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php', -]; $ignoreErrors[] = [ // identifier: missingType.return 'message' => '#^Method Drupal\\\\Tests\\\\Core\\\\Entity\\\\TestEntityForm\\:\\:getBaseFormId\\(\\) has no return type specified\\.$#', @@ -61515,12 +61509,6 @@ $ignoreErrors[] = [ 'count' => 1, 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php', ]; -$ignoreErrors[] = [ - // identifier: method.deprecated - 'message' => '#^Call to deprecated method getMockForAbstractClass\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\.$#', - 'count' => 1, - 'path' => __DIR__ . '/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php', -]; $ignoreErrors[] = [ // identifier: missingType.return 'message' => '#^Method Drupal\\\\Tests\\\\Core\\\\Entity\\\\EntityTypeTest\\:\\:providerTestGet\\(\\) has no return type specified\\.$#', diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php index ab84e16880d..7ece81b20ab 100644 --- a/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php +++ b/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php @@ -171,12 +171,11 @@ class EntityTypeManagerTest extends UnitTestCase { * @covers ::getStorage */ public function testGetStorage(): void { - $class = $this->getTestHandlerClass(); $entity = $this->prophesize(EntityTypeInterface::class); - $entity->getHandlerClass('storage')->willReturn($class); + $entity->getHandlerClass('storage')->willReturn(StubEntityHandlerBase::class); $this->setUpEntityTypeDefinitions(['test_entity_type' => $entity]); - $this->assertInstanceOf($class, $this->entityTypeManager->getStorage('test_entity_type')); + $this->assertInstanceOf(StubEntityHandlerBase::class, $this->entityTypeManager->getStorage('test_entity_type')); } /** @@ -185,12 +184,11 @@ class EntityTypeManagerTest extends UnitTestCase { * @covers ::getListBuilder */ public function testGetListBuilder(): void { - $class = $this->getTestHandlerClass(); $entity = $this->prophesize(EntityTypeInterface::class); - $entity->getHandlerClass('list_builder')->willReturn($class); + $entity->getHandlerClass('list_builder')->willReturn(StubEntityHandlerBase::class); $this->setUpEntityTypeDefinitions(['test_entity_type' => $entity]); - $this->assertInstanceOf($class, $this->entityTypeManager->getListBuilder('test_entity_type')); + $this->assertInstanceOf(StubEntityHandlerBase::class, $this->entityTypeManager->getListBuilder('test_entity_type')); } /** @@ -199,12 +197,11 @@ class EntityTypeManagerTest extends UnitTestCase { * @covers ::getViewBuilder */ public function testGetViewBuilder(): void { - $class = $this->getTestHandlerClass(); $entity = $this->prophesize(EntityTypeInterface::class); - $entity->getHandlerClass('view_builder')->willReturn($class); + $entity->getHandlerClass('view_builder')->willReturn(StubEntityHandlerBase::class); $this->setUpEntityTypeDefinitions(['test_entity_type' => $entity]); - $this->assertInstanceOf($class, $this->entityTypeManager->getViewBuilder('test_entity_type')); + $this->assertInstanceOf(StubEntityHandlerBase::class, $this->entityTypeManager->getViewBuilder('test_entity_type')); } /** @@ -213,12 +210,11 @@ class EntityTypeManagerTest extends UnitTestCase { * @covers ::getAccessControlHandler */ public function testGetAccessControlHandler(): void { - $class = $this->getTestHandlerClass(); $entity = $this->prophesize(EntityTypeInterface::class); - $entity->getHandlerClass('access')->willReturn($class); + $entity->getHandlerClass('access')->willReturn(StubEntityHandlerBase::class); $this->setUpEntityTypeDefinitions(['test_entity_type' => $entity]); - $this->assertInstanceOf($class, $this->entityTypeManager->getAccessControlHandler('test_entity_type')); + $this->assertInstanceOf(StubEntityHandlerBase::class, $this->entityTypeManager->getAccessControlHandler('test_entity_type')); } /** @@ -302,16 +298,15 @@ class EntityTypeManagerTest extends UnitTestCase { * @covers ::getHandler */ public function testGetHandler(): void { - $class = get_class($this->getMockForAbstractClass(TestEntityHandlerBase::class)); $apple = $this->prophesize(EntityTypeInterface::class); - $apple->getHandlerClass('storage')->willReturn($class); + $apple->getHandlerClass('storage')->willReturn(StubEntityHandlerBase::class); $this->setUpEntityTypeDefinitions([ 'apple' => $apple, ]); $apple_controller = $this->entityTypeManager->getHandler('apple', 'storage'); - $this->assertInstanceOf($class, $apple_controller); + $this->assertInstanceOf(StubEntityHandlerBase::class, $apple_controller); $this->assertInstanceOf(ModuleHandlerInterface::class, $apple_controller->moduleHandler); $this->assertInstanceOf(TranslationInterface::class, $apple_controller->stringTranslation); } @@ -446,33 +441,6 @@ class EntityTypeManagerTest extends UnitTestCase { $this->entityTypeManager->getDefinition('pear', TRUE); } - /** - * Gets a mock controller class name. - * - * @return string - * A mock controller class name. - */ - protected function getTestHandlerClass(): string { - return get_class($this->getMockForAbstractClass(EntityHandlerBase::class)); - } - -} - -/** - * Provides a test entity handler. - */ -abstract class TestEntityHandlerBase extends EntityHandlerBase { - - /** - * {@inheritdoc} - */ - public $moduleHandler; - - /** - * {@inheritdoc} - */ - public $stringTranslation; - } /** diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php index d334ed95176..e3581b32667 100644 --- a/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php +++ b/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php @@ -159,17 +159,16 @@ class EntityTypeTest extends UnitTestCase { * Tests the getHandler() method. */ public function testGetHandler(): void { - $controller = $this->getTestHandlerClass(); $entity_type = $this->setUpEntityType([ 'handlers' => [ - 'storage' => $controller, + 'storage' => StubEntityHandlerBase::class, 'form' => [ - 'default' => $controller, + 'default' => StubEntityHandlerBase::class, ], ], ]); - $this->assertSame($controller, $entity_type->getHandlerClass('storage')); - $this->assertSame($controller, $entity_type->getHandlerClass('form', 'default')); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getHandlerClass('storage')); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getHandlerClass('form', 'default')); $this->assertNull($entity_type->getHandlerClass('foo')); $this->assertNull($entity_type->getHandlerClass('foo', 'bar')); } @@ -178,76 +177,70 @@ class EntityTypeTest extends UnitTestCase { * Tests the getStorageClass() method. */ public function testGetStorageClass(): void { - $controller = $this->getTestHandlerClass(); $entity_type = $this->setUpEntityType([ 'handlers' => [ - 'storage' => $controller, + 'storage' => StubEntityHandlerBase::class, ], ]); - $this->assertSame($controller, $entity_type->getStorageClass()); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getStorageClass()); } /** * Tests the setStorageClass() method. */ public function testSetStorageClass(): void { - $controller = $this->getTestHandlerClass(); $entity_type = $this->setUpEntityType([]); - $this->assertSame($entity_type, $entity_type->setStorageClass($controller)); + $this->assertSame($entity_type, $entity_type->setStorageClass(StubEntityHandlerBase::class)); } /** * Tests the getListBuilderClass() method. */ public function testGetListBuilderClass(): void { - $controller = $this->getTestHandlerClass(); $entity_type = $this->setUpEntityType([ 'handlers' => [ - 'list_builder' => $controller, + 'list_builder' => StubEntityHandlerBase::class, ], ]); - $this->assertSame($controller, $entity_type->getListBuilderClass()); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getListBuilderClass()); } /** * Tests the getAccessControlClass() method. */ public function testGetAccessControlClass(): void { - $controller = $this->getTestHandlerClass(); $entity_type = $this->setUpEntityType([ 'handlers' => [ - 'access' => $controller, + 'access' => StubEntityHandlerBase::class, ], ]); - $this->assertSame($controller, $entity_type->getAccessControlClass()); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getAccessControlClass()); } /** * Tests the getFormClass() method. */ public function testGetFormClass(): void { - $controller = $this->getTestHandlerClass(); $operation = 'default'; $entity_type = $this->setUpEntityType([ 'handlers' => [ 'form' => [ - $operation => $controller, + $operation => StubEntityHandlerBase::class, ], ], ]); - $this->assertSame($controller, $entity_type->getFormClass($operation)); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getFormClass($operation)); } /** * Tests the hasFormClasses() method. */ public function testHasFormClasses(): void { - $controller = $this->getTestHandlerClass(); $operation = 'default'; $entity_type1 = $this->setUpEntityType([ 'handlers' => [ 'form' => [ - $operation => $controller, + $operation => StubEntityHandlerBase::class, ], ], ]); @@ -262,13 +255,12 @@ class EntityTypeTest extends UnitTestCase { * Tests the getViewBuilderClass() method. */ public function testGetViewBuilderClass(): void { - $controller = $this->getTestHandlerClass(); $entity_type = $this->setUpEntityType([ 'handlers' => [ - 'view_builder' => $controller, + 'view_builder' => StubEntityHandlerBase::class, ], ]); - $this->assertSame($controller, $entity_type->getViewBuilderClass()); + $this->assertSame(StubEntityHandlerBase::class, $entity_type->getViewBuilderClass()); } /** @@ -440,16 +432,6 @@ class EntityTypeTest extends UnitTestCase { ]; } - /** - * Gets a mock controller class name. - * - * @return string - * A mock controller class name. - */ - protected function getTestHandlerClass(): string { - return get_class($this->getMockForAbstractClass('Drupal\Core\Entity\EntityHandlerBase')); - } - /** * @covers ::setLinkTemplate */ diff --git a/core/tests/Drupal/Tests/Core/Entity/StubEntityHandlerBase.php b/core/tests/Drupal/Tests/Core/Entity/StubEntityHandlerBase.php new file mode 100644 index 00000000000..df10dca139c --- /dev/null +++ b/core/tests/Drupal/Tests/Core/Entity/StubEntityHandlerBase.php @@ -0,0 +1,24 @@ +