From ad005a74b253d976491e116d5efaaf6acbe123c5 Mon Sep 17 00:00:00 2001 From: catch Date: Tue, 22 Mar 2022 14:56:30 +0000 Subject: [PATCH] Issue #3270323 by Spokje, murilohp, catch, xjm, longwave: ModuleConfigureRouteTest::testModuleConfigureRoutes fails for modules which have a configure route and are deprecated (cherry picked from commit bb24e8ba3605fe45a8fd5c6e5a681415946d43b2) --- .../Extension/ModuleConfigureRouteTest.php | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/core/tests/Drupal/KernelTests/Core/Extension/ModuleConfigureRouteTest.php b/core/tests/Drupal/KernelTests/Core/Extension/ModuleConfigureRouteTest.php index df2e99dcab9..8c153bd9225 100644 --- a/core/tests/Drupal/KernelTests/Core/Extension/ModuleConfigureRouteTest.php +++ b/core/tests/Drupal/KernelTests/Core/Extension/ModuleConfigureRouteTest.php @@ -54,25 +54,31 @@ class ModuleConfigureRouteTest extends KernelTestBase { } $module_lifecycle = $module_info[ExtensionLifecycle::LIFECYCLE_IDENTIFIER]; if (isset($module_lifecycle) && $module_lifecycle === ExtensionLifecycle::DEPRECATED) { - $this->assertDeprecatedModuleConfigureRoutesExist($module_name, $module_info); - } - else { - $this->container->get('module_installer')->install([$module_name]); - $this->assertModuleConfigureRoutesExist($module_name, $module_info); + $this->markTestSkipped("$module_name is $module_lifecycle"); } + $this->container->get('module_installer')->install([$module_name]); + $this->assertModuleConfigureRoutesExist($module_name, $module_info); } /** - * Asserts the configure routes of a module with lifecycle deprecated exist. + * Tests if the module with lifecycle deprecated configure routes exists. * * Note: This test is part of group legacy, to make sure installing the * deprecated module doesn't trigger a deprecation notice. * * @group legacy * - * @internal + * @dataProvider coreModuleListDataProvider */ - protected function assertDeprecatedModuleConfigureRoutesExist(string $module_name, array $module_info): void { + public function testDeprecatedModuleConfigureRoutes(string $module_name): void { + $module_info = $this->moduleInfo[$module_name]->info; + if (!isset($module_info['configure'])) { + $this->markTestSkipped("$module_name has no configure route"); + } + $module_lifecycle = $module_info[ExtensionLifecycle::LIFECYCLE_IDENTIFIER]; + if (isset($module_lifecycle) && $module_lifecycle !== ExtensionLifecycle::DEPRECATED) { + $this->markTestSkipped("$module_name is not $module_lifecycle"); + } $this->container->get('module_installer')->install([$module_name]); $this->assertModuleConfigureRoutesExist($module_name, $module_info); }