diff --git a/core/lib/Drupal/Core/CoreServiceProvider.php b/core/lib/Drupal/Core/CoreServiceProvider.php index 8f4f66c..de7116a 100644 --- a/core/lib/Drupal/Core/CoreServiceProvider.php +++ b/core/lib/Drupal/Core/CoreServiceProvider.php @@ -53,6 +53,7 @@ public function register(ContainerBuilder $container) { $this->registerTwig($container); $this->registerModuleHandler($container); $this->registerUuid($container); + $this->registerTest($container); // Add the compiler pass that lets service providers modify existing // service definitions. This pass must come first so that later @@ -170,4 +171,20 @@ public static function registerUuid(ContainerBuilder $container) { return $uuid_class; } + /** + * Registers services and event subscribers for a site under test. + */ + protected function registerTest(ContainerBuilder $container) { + // Do nothing in case we are not in a test environment. + if (!drupal_valid_test_ua()) { + return; + } + // Add the HTTP request subscriber to Guzzle. + $container->register('http_client.test.subscriber', 'Drupal\Core\Test\EventSubscriber\TestHttpRequestSubscriber'); + $definition = $container->getDefinition('http_default_client'); + $definition->addMethodCall('addSubscriber', array( + new Reference('http_client.test.subscriber'), + )); + } + } diff --git a/core/lib/Drupal/Core/Http/Plugin/SimpletestHttpRequestSubscriber.php b/core/lib/Drupal/Core/Test/EventSubscriber/TestHttpRequestSubscriber.php similarity index 76% rename from core/lib/Drupal/Core/Http/Plugin/SimpletestHttpRequestSubscriber.php rename to core/lib/Drupal/Core/Test/EventSubscriber/TestHttpRequestSubscriber.php index 3db5def..3acaf0c 100644 --- a/core/lib/Drupal/Core/Http/Plugin/SimpletestHttpRequestSubscriber.php +++ b/core/lib/Drupal/Core/Test/EventSubscriber/TestHttpRequestSubscriber.php @@ -1,19 +1,19 @@ setHeader('User-Agent', drupal_generate_test_ua($test_prefix)); } } + } diff --git a/core/profiles/testing/lib/Drupal/testing/TestingServiceProvider.php b/core/profiles/testing/lib/Drupal/testing/TestingServiceProvider.php deleted file mode 100644 index 2b61fd0..0000000 --- a/core/profiles/testing/lib/Drupal/testing/TestingServiceProvider.php +++ /dev/null @@ -1,37 +0,0 @@ -register('http_client_simpletest_subscriber', 'Drupal\Core\Http\Plugin\SimpletestHttpRequestSubscriber'); - } - - /** - * {@inheritdoc} - */ - public function alter(ContainerBuilder $container) { - // Overrides language_manager class to test domain language negotiation. - $definition = $container->getDefinition('http_default_client'); - $definition->addMethodCall('addSubscriber', array(new Reference('http_client_simpletest_subscriber'))); - } - -}