class MenuLinkMock
Same name in other branches
- 9 core/tests/Drupal/Tests/Core/Menu/MenuLinkMock.php \Drupal\Tests\Core\Menu\MenuLinkMock
- 8.9.x core/tests/Drupal/Tests/Core/Menu/MenuLinkMock.php \Drupal\Tests\Core\Menu\MenuLinkMock
- 10 core/tests/Drupal/Tests/Core/Menu/MenuLinkMock.php \Drupal\Tests\Core\Menu\MenuLinkMock
Defines a mock implementation of a menu link used in tests only.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements \Drupal\Component\Plugin\PluginInspectionInterface, \Drupal\Component\Plugin\DerivativeInspectionInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
- class \Drupal\Core\Menu\MenuLinkBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\Core\Menu\MenuLinkInterface
- class \Drupal\Tests\Core\Menu\MenuLinkMock extends \Drupal\Core\Menu\MenuLinkBase
- class \Drupal\Core\Menu\MenuLinkBase extends \Drupal\Core\Plugin\PluginBase implements \Drupal\Core\Menu\MenuLinkInterface
- class \Drupal\Core\Plugin\PluginBase extends \Drupal\Component\Plugin\PluginBase uses \Drupal\Core\StringTranslation\StringTranslationTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Messenger\MessengerTrait
Expanded class hierarchy of MenuLinkMock
6 files declare their use of MenuLinkMock
- MenuLinkTreeTest.php in core/
modules/ system/ tests/ src/ Unit/ Menu/ MenuLinkTreeTest.php - MenuLinkTreeTest.php in core/
tests/ Drupal/ KernelTests/ Core/ Menu/ MenuLinkTreeTest.php - NavigationMenuBlockTest.php in core/
modules/ navigation/ tests/ src/ Kernel/ NavigationMenuBlockTest.php - NavigationMenuMarkupTest.php in core/
modules/ navigation/ tests/ src/ Kernel/ NavigationMenuMarkupTest.php - SystemMenuBlockTest.php in core/
modules/ system/ tests/ src/ Kernel/ Block/ SystemMenuBlockTest.php
File
-
core/
tests/ Drupal/ Tests/ Core/ Menu/ MenuLinkMock.php, line 13
Namespace
Drupal\Tests\Core\MenuView source
class MenuLinkMock extends MenuLinkBase {
/**
* The default configuration for the test menu link.
*
* @var array
*/
protected static $defaults = [
'menu_name' => 'mock',
'route_name' => 'MUST BE PROVIDED',
'route_parameters' => [],
'url' => '',
'title' => 'MUST BE PROVIDED',
'title_arguments' => [],
'title_context' => '',
'description' => '',
'parent' => 'MUST BE PROVIDED',
'weight' => '0',
'options' => [],
'expanded' => '0',
'enabled' => '1',
'provider' => 'test',
'metadata' => [
'cache_contexts' => [],
'cache_tags' => [],
'cache_max_age' => Cache::PERMANENT,
],
'class' => 'Drupal\\Tests\\Core\\Menu\\MenuLinkMock',
'form_class' => 'Drupal\\Core\\Menu\\Form\\MenuLinkDefaultForm',
'id' => 'MUST BE PROVIDED',
];
/**
* Create an instance from a definition with at least id, title, route_name.
*/
public static function create($definition) {
return new static([], $definition['id'], $definition + static::$defaults);
}
/**
* {@inheritdoc}
*/
public function getTitle() {
return $this->pluginDefinition['title'];
}
/**
* {@inheritdoc}
*/
public function getDescription() {
if ($this->pluginDefinition['description']) {
return $this->pluginDefinition['description'];
}
return '';
}
/**
* {@inheritdoc}
*/
public function updateLink(array $new_definition_values, $persist) {
// No-op.
return $this->pluginDefinition;
}
/**
* {@inheritdoc}
*/
public function getCacheContexts() {
return $this->pluginDefinition['metadata']['cache_contexts'];
}
/**
* {@inheritdoc}
*/
public function getCacheTags() {
return $this->pluginDefinition['metadata']['cache_tags'];
}
/**
* {@inheritdoc}
*/
public function getCacheMaxAge() {
return $this->pluginDefinition['metadata']['cache_max_age'];
}
}
Members
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.