From 0dd821abaad406b16a6def7075880d056d92473d Mon Sep 17 00:00:00 2001 From: Lee Rowlands <lee.rowlands@previousnext.com.au> Date: Fri, 3 Jan 2025 14:00:05 +1000 Subject: [PATCH] Issue #3495577 by nikolay shapovalov, nicxvan: Move helpers in menu_test.module and delete it --- .../tests/modules/menu_test/menu_test.module | 45 ------------------- .../menu_test/src/Hook/MenuTestHooks.php | 3 +- .../modules/menu_test/src/MenuTestHelper.php | 31 +++++++++++++ .../src/Functional/Menu/MenuRouterTest.php | 3 +- 4 files changed, 35 insertions(+), 47 deletions(-) delete mode 100644 core/modules/system/tests/modules/menu_test/menu_test.module create mode 100644 core/modules/system/tests/modules/menu_test/src/MenuTestHelper.php diff --git a/core/modules/system/tests/modules/menu_test/menu_test.module b/core/modules/system/tests/modules/menu_test/menu_test.module deleted file mode 100644 index 224bcc46f34c..000000000000 --- a/core/modules/system/tests/modules/menu_test/menu_test.module +++ /dev/null @@ -1,45 +0,0 @@ -<?php - -/** - * @file - * Module that implements various hooks for menu tests. - */ - -declare(strict_types=1); - -/** - * Sets a static variable for the testMenuName() test. - * - * Used to change the menu_name parameter of a menu. - * - * @param string $new_name - * (optional) If set, will change the $menu_name value. - * - * @return string - * The $menu_name value to use. - */ -function menu_test_menu_name($new_name = '') { - static $menu_name = 'original'; - if ($new_name) { - $menu_name = $new_name; - } - return $menu_name; -} - -/** - * Title callback: Concatenates the title and case number. - * - * @param string $title - * Title string. - * @param int $case_number - * (optional) The current case number which it tests (defaults to 3). - * - * @return string - * A string containing the title and case number. - * - * @see menu_test_menu() - */ -function menu_test_title_callback($title, $case_number = 3) { - // phpcs:ignore Drupal.Semantics.FunctionT.NotLiteralString - return t($title) . ' - Case ' . $case_number; -} diff --git a/core/modules/system/tests/modules/menu_test/src/Hook/MenuTestHooks.php b/core/modules/system/tests/modules/menu_test/src/Hook/MenuTestHooks.php index 60e3db2679a6..112acb273642 100644 --- a/core/modules/system/tests/modules/menu_test/src/Hook/MenuTestHooks.php +++ b/core/modules/system/tests/modules/menu_test/src/Hook/MenuTestHooks.php @@ -7,6 +7,7 @@ use Drupal\Core\Url; use Drupal\Core\Cache\RefinableCacheableDependencyInterface; use Drupal\Core\Hook\Attribute\Hook; +use Drupal\menu_test\MenuTestHelper; /** * Hook implementations for menu_test. @@ -21,7 +22,7 @@ public function menuLinksDiscoveredAlter(&$links): void { // Many of the machine names here are slightly different from the route name. // Since the machine name is arbitrary, this helps ensure that core does not // add mistaken assumptions about the correlation. - $links['menu_test.menu_name_test']['menu_name'] = menu_test_menu_name(); + $links['menu_test.menu_name_test']['menu_name'] = MenuTestHelper::menuName(); $links['menu_test.context']['title'] = \Drupal::config('menu_test.menu_item')->get('title'); // Adds a custom menu link. $links['menu_test.custom'] = [ diff --git a/core/modules/system/tests/modules/menu_test/src/MenuTestHelper.php b/core/modules/system/tests/modules/menu_test/src/MenuTestHelper.php new file mode 100644 index 000000000000..773d4fcec69b --- /dev/null +++ b/core/modules/system/tests/modules/menu_test/src/MenuTestHelper.php @@ -0,0 +1,31 @@ +<?php + +declare(strict_types=1); + +namespace Drupal\menu_test; + +/** + * Helper class for the menu API tests. + */ +final class MenuTestHelper { + + /** + * Sets a static variable for the testMenuName() test. + * + * Used to change the menu_name parameter of a menu. + * + * @param string $new_name + * (optional) If set, will change the $menu_name value. + * + * @return string + * The $menu_name value to use. + */ + public static function menuName(string $new_name = ''): string { + static $menu_name = 'original'; + if ($new_name) { + $menu_name = $new_name; + } + return $menu_name; + } + +} diff --git a/core/modules/system/tests/src/Functional/Menu/MenuRouterTest.php b/core/modules/system/tests/src/Functional/Menu/MenuRouterTest.php index a450538ddf21..f0e2db52f57d 100644 --- a/core/modules/system/tests/src/Functional/Menu/MenuRouterTest.php +++ b/core/modules/system/tests/src/Functional/Menu/MenuRouterTest.php @@ -5,6 +5,7 @@ namespace Drupal\Tests\system\Functional\Menu; use Drupal\Core\Url; +use Drupal\menu_test\MenuTestHelper; use Drupal\Tests\BrowserTestBase; /** @@ -121,7 +122,7 @@ protected function doTestMenuName(): void { // Change the menu_name parameter in menu_test.module, then force a menu // rebuild. - menu_test_menu_name('changed'); + MenuTestHelper::menuName('changed'); $menu_link_manager->rebuild(); $menu_links = $menu_link_manager->loadLinksByRoute('menu_test.menu_name_test'); -- GitLab