diff --git a/src/DrupalHelper.php b/src/DrupalHelper.php index 8488c55..b1cf79a 100644 --- a/src/DrupalHelper.php +++ b/src/DrupalHelper.php @@ -3,7 +3,9 @@ namespace SimpleSAML\Module\drupalauth; use Drupal\Core\DrupalKernel; +use Drupal\Core\Routing\RouteObjectInterface; use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\Routing\Route; class DrupalHelper { @@ -13,6 +15,8 @@ class DrupalHelper * Boot Drupal. * * @param string $drupalRoot Path to Drupal root. + * + * @see \Drupal\Core\Test\FunctionalTestSetupTrait::initKernel() */ public function bootDrupal(string $drupalRoot) { @@ -22,7 +26,9 @@ public function bootDrupal(string $drupalRoot) chdir($drupalRoot); $kernel = DrupalKernel::createFromRequest($request, $autoloader, 'prod', true, $drupalRoot); $kernel->boot(); - $kernel->loadLegacyIncludes(); + $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('')); + $request->attributes->set(RouteObjectInterface::ROUTE_NAME, ''); + $kernel->preHandle($request); chdir($originalDir); }