Commit ad005a74 authored by catch's avatar catch
Browse files

Issue #3270323 by Spokje, murilohp, catch, xjm, longwave:...

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 bb24e8ba)
parent b9bf2bb6
Loading
Loading
Loading
Loading
+14 −8
Original line number Diff line number Diff line
@@ -54,25 +54,31 @@ public function testModuleConfigureRoutes(string $module_name): void {
    }
    $module_lifecycle = $module_info[ExtensionLifecycle::LIFECYCLE_IDENTIFIER];
    if (isset($module_lifecycle) && $module_lifecycle === ExtensionLifecycle::DEPRECATED) {
      $this->assertDeprecatedModuleConfigureRoutesExist($module_name, $module_info);
      $this->markTestSkipped("$module_name is $module_lifecycle");
    }
    else {
    $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);
  }