function ContainerTest::testResolveServicesAndParametersForPrivateService

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php \Drupal\Tests\Component\DependencyInjection\ContainerTest::testResolveServicesAndParametersForPrivateService()
  2. 8.9.x core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php \Drupal\Tests\Component\DependencyInjection\ContainerTest::testResolveServicesAndParametersForPrivateService()
  3. 11.x core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php \Drupal\Tests\Component\DependencyInjection\ContainerTest::testResolveServicesAndParametersForPrivateService()

Tests that private services work correctly.

@covers ::get
@covers ::createService
@covers ::resolveServicesAndParameters

File

core/tests/Drupal/Tests/Component/DependencyInjection/ContainerTest.php, line 537

Class

ContainerTest
@coversDefaultClass \Drupal\Component\DependencyInjection\Container[[api-linebreak]] @group DependencyInjection

Namespace

Drupal\Tests\Component\DependencyInjection

Code

public function testResolveServicesAndParametersForPrivateService() : void {
  $service = $this->container
    ->get('service_using_private');
  $private_service = $service->getSomeOtherService();
  $this->assertEquals('really_private_lama', $private_service->getSomeParameter(), 'Private was found successfully.');
  // Test that sharing the same private services works.
  $service = $this->container
    ->get('another_service_using_private');
  $another_private_service = $service->getSomeOtherService();
  $this->assertNotSame($private_service, $another_private_service, 'Private service is not shared.');
  $this->assertEquals('really_private_lama', $private_service->getSomeParameter(), 'Private was found successfully.');
}

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