Skip to content
Snippets Groups Projects
Commit 0a98e22d authored by catch's avatar catch
Browse files

Issue #3443203 by smustgrave, andypost: Remove deprecated code from menu link content module

parent 9aa8d39c
No related branches found
No related tags found
29 merge requests!12227Issue #3181946 by jonmcl, mglaman,!11131[10.4.x-only-DO-NOT-MERGE]: Issue ##2842525 Ajax attached to Views exposed filter form does not trigger callbacks,!9470[10.3.x-only-DO-NOT-MERGE]: #3331771 Fix file_get_contents(): Passing null to parameter,!8540Issue #3457061: Bootstrap Modal dialog Not closing after 10.3.0 Update,!8528Issue #3456871 by Tim Bozeman: Support NULL services,!8373Issue #3427374 by danflanagan8, Vighneshh: taxonomy_tid ViewsArgumentDefault...,!5423Draft: Resolve #3329907 "Test2",!3878Removed unused condition head title for views,!3818Issue #2140179: $entity->original gets stale between updates,!3742Issue #3328429: Create item list field formatter for displaying ordered and unordered lists,!3731Claro: role=button on status report items,!3651Issue #3347736: Create new SDC component for Olivero (header-search),!3531Issue #3336994: StringFormatter always displays links to entity even if the user in context does not have access,!3478Issue #3337882: Deleted menus are not removed from content type config,!3355Issue #3209129: Scrolling problems when adding a block via layout builder,!3154Fixes #2987987 - CSRF token validation broken on routes with optional parameters.,!3133core/modules/system/css/components/hidden.module.css,!2964Issue #2865710 : Dependencies from only one instance of a widget are used in display modes,!2812Issue #3312049: [Followup] Fix Drupal.Commenting.FunctionComment.MissingReturnType returns for NULL,!2378Issue #2875033: Optimize joins and table selection in SQL entity query implementation,!2062Issue #3246454: Add weekly granularity to views date sort,!1105Issue #3025039: New non translatable field on translatable content throws error,!1073issue #3191727: Focus states on mobile second level navigation items fixed,!10223132456: Fix issue where views instances are emptied before an ajax request is complete,!877Issue #2708101: Default value for link text is not saved,!579Issue #2230909: Simple decimals fail to pass validation,!560Move callback classRemove outside of the loop,!555Issue #3202493,!213Issue #2906496: Give Media a menu item under Content
Pipeline #155804 canceled
......@@ -3,12 +3,10 @@
namespace Drupal\menu_link_content\Form;
use Drupal\Component\Datetime\TimeInterface;
use Drupal\Core\DependencyInjection\DeprecatedServicePropertyTrait;
use Drupal\Core\Entity\ContentEntityForm;
use Drupal\Core\Entity\EntityRepositoryInterface;
use Drupal\Core\Entity\EntityTypeBundleInfoInterface;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Language\LanguageManagerInterface;
use Drupal\Core\Menu\MenuParentFormSelectorInterface;
use Drupal\Core\Path\PathValidatorInterface;
use Drupal\system\MenuInterface;
......@@ -21,13 +19,6 @@
*/
class MenuLinkContentForm extends ContentEntityForm {
use DeprecatedServicePropertyTrait;
/**
* The deprecated properties and services on this class.
*/
protected array $deprecatedProperties = ['languageManager' => 'language_manager'];
/**
* The content menu link.
*
......@@ -35,39 +26,27 @@ class MenuLinkContentForm extends ContentEntityForm {
*/
protected $entity;
/**
* The parent form selector service.
*/
protected MenuParentFormSelectorInterface $menuParentSelector;
/**
* The path validator.
*/
protected PathValidatorInterface $pathValidator;
/**
* Constructs a MenuLinkContentForm object.
*
* @param \Drupal\Core\Entity\EntityRepositoryInterface $entity_repository
* The entity repository.
* @param \Drupal\Core\Menu\MenuParentFormSelectorInterface $menu_parent_selector
* @param \Drupal\Core\Menu\MenuParentFormSelectorInterface $menuParentSelector
* The menu parent form selector service.
* @param \Drupal\Core\Path\PathValidatorInterface|\Drupal\Core\Language\LanguageManagerInterface $path_validator
* @param \Drupal\Core\Path\PathValidatorInterface $pathValidator
* The path validator.
* @param \Drupal\Core\Entity\EntityTypeBundleInfoInterface|\Drupal\Core\Path\PathValidatorInterface $entity_type_bundle_info
* @param \Drupal\Core\Entity\EntityTypeBundleInfoInterface $entity_type_bundle_info
* The entity type bundle service.
* @param \Drupal\Component\Datetime\TimeInterface|\Drupal\Core\Entity\EntityTypeBundleInfoInterface $time
* @param \Drupal\Component\Datetime\TimeInterface $time
* The time service.
*/
public function __construct(EntityRepositoryInterface $entity_repository, MenuParentFormSelectorInterface $menu_parent_selector, PathValidatorInterface|LanguageManagerInterface $path_validator, EntityTypeBundleInfoInterface|PathValidatorInterface $entity_type_bundle_info = NULL, TimeInterface|EntityTypeBundleInfoInterface $time = NULL) {
if ($path_validator instanceof LanguageManagerInterface) {
$path_validator = func_get_arg(3);
$entity_type_bundle_info = func_get_arg(4);
$time = func_get_arg(5);
@trigger_error('Calling ' . __CLASS__ . '::__construct() with the $language_manager argument is deprecated in drupal:10.2.0 and is removed in drupal:11.0.0. See https://www.drupal.org/node/3325178', E_USER_DEPRECATED);
}
$this->menuParentSelector = $menu_parent_selector;
$this->pathValidator = $path_validator;
public function __construct(
EntityRepositoryInterface $entity_repository,
protected MenuParentFormSelectorInterface $menuParentSelector,
protected PathValidatorInterface $pathValidator,
EntityTypeBundleInfoInterface $entity_type_bundle_info,
TimeInterface $time,
) {
parent::__construct($entity_repository, $entity_type_bundle_info, $time);
}
......
<?php
declare(strict_types=1);
namespace Drupal\Tests\menu_link_content\Kernel;
use Drupal\Component\Datetime\TimeInterface;
use Drupal\Core\Entity\EntityRepositoryInterface;
use Drupal\Core\Entity\EntityTypeBundleInfoInterface;
use Drupal\Core\Language\LanguageManagerInterface;
use Drupal\Core\Menu\MenuParentFormSelectorInterface;
use Drupal\Core\Path\PathValidatorInterface;
use Drupal\KernelTests\KernelTestBase;
use Drupal\menu_link_content\Form\MenuLinkContentForm;
/**
* Tests the deprecation notices of the menu_link_content module.
*
* @group menu_link_content
* @group legacy
*/
class MenuLinkContentDeprecationsTest extends KernelTestBase {
/**
* Tests the deprecation in the \Drupal\menu_link_content\Form\MenuLinkContentForm constructor.
*/
public function testMenuLinkContentFormConstructorDeprecation(): void {
$entity_repository = $this->prophesize(EntityRepositoryInterface::class);
$menu_parent_form_selector = $this->prophesize(MenuParentFormSelectorInterface::class);
$language_manager = $this->prophesize(LanguageManagerInterface::class);
$path_validator = $this->prophesize(PathValidatorInterface::class);
$entity_type_bundle_info = $this->prophesize(EntityTypeBundleInfoInterface::class);
$time = $this->prophesize(TimeInterface::class);
$this->expectDeprecation('Calling Drupal\menu_link_content\Form\MenuLinkContentForm::__construct() with the $language_manager argument is deprecated in drupal:10.2.0 and is removed in drupal:11.0.0. See https://www.drupal.org/node/3325178');
new MenuLinkContentForm(
$entity_repository->reveal(),
$menu_parent_form_selector->reveal(),
$language_manager->reveal(),
$path_validator->reveal(),
$entity_type_bundle_info->reveal(),
$time->reveal()
);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment