Issue #3270323 by Spokje, murilohp, catch, xjm, longwave: ModuleConfigureRouteTest::testModuleConfigureRoutes fails for modules which have a configure route and are deprecated

merge-requests/1884/head
catch 2022-03-22 14:56:30 +00:00
parent ffcf3e6c16
commit bb24e8ba36
1 changed files with 14 additions and 8 deletions

View File

@ -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);
}