function ServicesDefaultsTest::testAutowiring

Same name and namespace in other branches
  1. 9 core/tests/Drupal/KernelTests/Core/DependencyInjection/ServicesDefaultsTest.php \Drupal\KernelTests\Core\DependencyInjection\ServicesDefaultsTest::testAutowiring()
  2. 11.x core/tests/Drupal/KernelTests/Core/DependencyInjection/ServicesDefaultsTest.php \Drupal\KernelTests\Core\DependencyInjection\ServicesDefaultsTest::testAutowiring()

Tests that 'services_defaults_test.service' has its dependencies injected.

File

core/tests/Drupal/KernelTests/Core/DependencyInjection/ServicesDefaultsTest.php, line 25

Class

ServicesDefaultsTest
Tests services _defaults definition.

Namespace

Drupal\KernelTests\Core\DependencyInjection

Code

public function testAutowiring() : void {
  // Ensure interface autowiring works.
  $this->assertSame($this->container
    ->get('Drupal\\services_defaults_test\\TestInjection'), $this->container
    ->get('Drupal\\services_defaults_test\\TestService')
    ->getTestInjection());
  // Ensure defaults autowire works.
  $this->assertSame($this->container
    ->get('Drupal\\services_defaults_test\\TestInjection2'), $this->container
    ->get('Drupal\\services_defaults_test\\TestService')
    ->getTestInjection2());
  // Ensure that disabling autowiring works.
  $this->assertNotSame($this->container
    ->get('Drupal\\services_defaults_test\\TestInjection'), $this->container
    ->get('services_default_test.no_autowire')
    ->getTestInjection());
  $this->assertSame($this->container
    ->get('services_default_test.no_autowire.arg'), $this->container
    ->get('services_default_test.no_autowire')
    ->getTestInjection());
  $this->assertSame($this->container
    ->get('Drupal\\services_defaults_test\\TestInjection2'), $this->container
    ->get('services_default_test.no_autowire')
    ->getTestInjection2());
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.