InspectionTest.php

Same filename and directory in other branches
  1. 11.x core/tests/Drupal/KernelTests/Core/Plugin/InspectionTest.php
  2. 10 core/tests/Drupal/KernelTests/Core/Plugin/InspectionTest.php
  3. 9 core/tests/Drupal/KernelTests/Core/Plugin/InspectionTest.php
  4. 8.9.x core/tests/Drupal/KernelTests/Core/Plugin/InspectionTest.php

Namespace

Drupal\KernelTests\Core\Plugin

File

core/tests/Drupal/KernelTests/Core/Plugin/InspectionTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\KernelTests\Core\Plugin;

use PHPUnit\Framework\Attributes\Group;
use PHPUnit\Framework\Attributes\RunTestsInSeparateProcesses;

/**
 * Tests that plugins implementing PluginInspectionInterface can be inspected.
 */
class InspectionTest extends PluginTestBase {
  
  /**
   * Tests getPluginId() and getPluginDefinition().
   */
  public function testInspection() : void {
    foreach ([
      'user_login',
    ] as $id) {
      $plugin = $this->testPluginManager
        ->createInstance($id);
      $expected_definition = $this->testPluginExpectedDefinitions[$id];
      $this->assertSame($id, $plugin->getPluginId());
      $this->assertSame($expected_definition, $this->testPluginManager
        ->getDefinition($id));
      $this->assertSame($expected_definition, $plugin->getPluginDefinition());
    }
    // Skip the 'menu' derived blocks, because MockMenuBlock does not implement
    // PluginInspectionInterface. The others do by extending PluginBase.
    foreach ([
      'user_login',
      'layout',
    ] as $id) {
      $plugin = $this->mockBlockManager
        ->createInstance($id);
      $expected_definition = $this->mockBlockExpectedDefinitions[$id];
      $this->assertSame($id, $plugin->getPluginId());
      $this->assertEquals($expected_definition, $this->mockBlockManager
        ->getDefinition($id));
      $this->assertEquals($expected_definition, $plugin->getPluginDefinition());
    }
    // Test a plugin manager that provides defaults.
    foreach ([
      'test_block1',
      'test_block2',
    ] as $id) {
      $plugin = $this->defaultsTestPluginManager
        ->createInstance($id);
      $expected_definition = $this->defaultsTestPluginExpectedDefinitions[$id];
      $this->assertSame($id, $plugin->getPluginId());
      $this->assertSame($expected_definition, $this->defaultsTestPluginManager
        ->getDefinition($id));
      $this->assertEquals($expected_definition, $plugin->getPluginDefinition());
    }
  }

}

Classes

Title Deprecated Summary
InspectionTest Tests that plugins implementing PluginInspectionInterface can be inspected.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.