diff --git a/core/lib/Drupal/Core/Test/FunctionalTestSetupTrait.php b/core/lib/Drupal/Core/Test/FunctionalTestSetupTrait.php index 15a1ee80de8..3e9932ee3cf 100644 --- a/core/lib/Drupal/Core/Test/FunctionalTestSetupTrait.php +++ b/core/lib/Drupal/Core/Test/FunctionalTestSetupTrait.php @@ -251,32 +251,22 @@ trait FunctionalTestSetupTrait { */ protected function prepareRequestForGenerator($clean_urls = TRUE, $override_server_vars = []) { $request = Request::createFromGlobals(); - $server = $request->server->all(); - if (basename($server['SCRIPT_FILENAME']) != basename($server['SCRIPT_NAME'])) { - // We need this for when the test is executed by run-tests.sh. - // @todo Remove this once run-tests.sh has been converted to use a Request - // object. - $cwd = getcwd(); - $server['SCRIPT_FILENAME'] = $cwd . '/' . basename($server['SCRIPT_NAME']); - $base_path = rtrim($server['REQUEST_URI'], '/'); - } - else { - $base_path = $request->getBasePath(); - } + $base_path = $request->getBasePath(); if ($clean_urls) { $request_path = $base_path ? $base_path . '/user' : 'user'; } else { $request_path = $base_path ? $base_path . '/index.php/user' : '/index.php/user'; } - $server = array_merge($server, $override_server_vars); + + $server = array_merge($request->server->all(), $override_server_vars); $request = Request::create($request_path, 'GET', [], [], [], $server); // Ensure the request time is REQUEST_TIME to ensure that API calls // in the test use the right timestamp. $request->server->set('REQUEST_TIME', REQUEST_TIME); - $this->container->get('request_stack')->push($request); + $this->container->get('request_stack')->push($request); // The request context is normally set by the router_listener from within // its KernelEvents::REQUEST listener. In the parent site this event is not // fired, therefore it is necessary to update the request context manually