You are here

public function FragmentRendererPassTest::testValidContentRenderer in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/http-kernel/Tests/DependencyInjection/FragmentRendererPassTest.php \Symfony\Component\HttpKernel\Tests\DependencyInjection\FragmentRendererPassTest::testValidContentRenderer()

File

vendor/symfony/http-kernel/Tests/DependencyInjection/FragmentRendererPassTest.php, line 105

Class

FragmentRendererPassTest

Namespace

Symfony\Component\HttpKernel\Tests\DependencyInjection

Code

public function testValidContentRenderer() {
  $services = array(
    'my_content_renderer' => array(
      array(
        'alias' => 'foo',
      ),
    ),
  );
  $renderer = $this
    ->getMock('Symfony\\Component\\DependencyInjection\\Definition');
  $renderer
    ->expects($this
    ->once())
    ->method('addMethodCall')
    ->with('addRendererService', array(
    'foo',
    'my_content_renderer',
  ));
  $definition = $this
    ->getMock('Symfony\\Component\\DependencyInjection\\Definition');
  $definition
    ->expects($this
    ->atLeastOnce())
    ->method('getClass')
    ->will($this
    ->returnValue('Symfony\\Component\\HttpKernel\\Tests\\DependencyInjection\\RendererService'));
  $definition
    ->expects($this
    ->once())
    ->method('isPublic')
    ->will($this
    ->returnValue(true));
  $builder = $this
    ->getMock('Symfony\\Component\\DependencyInjection\\ContainerBuilder', array(
    'hasDefinition',
    'findTaggedServiceIds',
    'getDefinition',
  ));
  $builder
    ->expects($this
    ->any())
    ->method('hasDefinition')
    ->will($this
    ->returnValue(true));

  // We don't test kernel.fragment_renderer here
  $builder
    ->expects($this
    ->atLeastOnce())
    ->method('findTaggedServiceIds')
    ->will($this
    ->returnValue($services));
  $builder
    ->expects($this
    ->atLeastOnce())
    ->method('getDefinition')
    ->will($this
    ->onConsecutiveCalls($renderer, $definition));
  $pass = new FragmentRendererPass();
  $pass
    ->process($builder);
}