public function testProcess()
 {
     $definition = $this->getMockBuilder('Symfony\\Component\\DependencyInjection\\Definition')->disableOriginalConstructor()->getMock();
     $containerBuilder = $this->getMockBuilder('Symfony\\Component\\DependencyInjection\\ContainerBuilder')->disableOriginalConstructor()->getMock();
     $containerBuilder->expects($this->once())->method('hasDefinition')->with(ContentProviderPass::CONTENT_PROVIDER_MANAGER_SERVICE)->will($this->returnValue(true));
     $containerBuilder->expects($this->once())->method('getDefinition')->with(ContentProviderPass::CONTENT_PROVIDER_MANAGER_SERVICE)->will($this->returnValue($definition));
     $services = array('testId' => array(array('enabled' => false)));
     $containerBuilder->expects($this->once())->method('findTaggedServiceIds')->with(ContentProviderPass::CONTENT_PROVIDER_TAG)->will($this->returnValue($services));
     $definition->expects($this->once())->method('addMethodCall')->with('addContentProvider', array(new Reference('testId'), false));
     $pass = new ContentProviderPass();
     $pass->process($containerBuilder);
 }
 public function testProcess()
 {
     $managerDefinition = new Definition('\\Oro\\Bundle\\UIBundle\\ContentProvider\\ContentProviderManager');
     $providerDefinition = new Definition('\\FooBundle\\FooProvider');
     $twigDefinition = new Definition('\\Twig_Engine');
     $providerDefinition->addTag(ContentProviderPass::CONTENT_PROVIDER_TAG);
     $containerBuilder = new ContainerBuilder();
     $containerBuilder->setDefinition(ContentProviderPass::CONTENT_PROVIDER_MANAGER_SERVICE, $managerDefinition);
     $containerBuilder->setDefinition('testId', $providerDefinition);
     $containerBuilder->setDefinition(ContentProviderPass::TWIG_SERVICE_KEY, $twigDefinition);
     $pass = new ContentProviderPass();
     $pass->process($containerBuilder);
     $calls = $managerDefinition->getMethodCalls();
     $this->assertNotEmpty($calls);
     $this->assertEquals(array_pop($calls), ['addContentProvider', [new Reference('testId'), true]]);
     $calls = $twigDefinition->getMethodCalls();
     $this->assertNotEmpty($calls);
     $this->assertEquals(array_pop($calls), ['addGlobal', ['oro_ui_content_provider_manager', new Reference(ContentProviderPass::CONTENT_PROVIDER_MANAGER_SERVICE)]]);
 }