public function ContainerBuilderTest::testAddObjectResource

@covers Symfony\Component\DependencyInjection\ContainerBuilder::addObjectResource

File

drupal/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php, line 488

Class

ContainerBuilderTest

Namespace

Symfony\Component\DependencyInjection\Tests

Code

public function testAddObjectResource() {
  if (!class_exists('Symfony\\Component\\Config\\Resource\\FileResource')) {
    $this
      ->markTestSkipped('The "Config" component is not available');
  }
  $container = new ContainerBuilder();
  $container
    ->setResourceTracking(false);
  $container
    ->addObjectResource(new \BarClass());
  $this
    ->assertEmpty($container
    ->getResources(), 'No resources get registered without resource tracking');
  $container
    ->setResourceTracking(true);
  $container
    ->addObjectResource(new \BarClass());
  $resources = $container
    ->getResources();
  $this
    ->assertCount(1, $resources, '1 resource was registered');

  /* @var $resource \Symfony\Component\Config\Resource\FileResource */
  $resource = end($resources);
  $this
    ->assertInstanceOf('Symfony\\Component\\Config\\Resource\\FileResource', $resource);
  $this
    ->assertSame(realpath(__DIR__ . '/Fixtures/includes/classes.php'), realpath($resource
    ->getResource()));
}