/** * @param string $defaultNS * @param int $undefinedStrategy * @param array $groupsBySiteAccess * * @return \eZ\Bundle\EzPublishCoreBundle\DependencyInjection\Configuration\ConfigResolver */ private function getResolver($defaultNS = 'ezsettings', $undefinedStrategy = ConfigResolver::UNDEFINED_STRATEGY_EXCEPTION, array $groupsBySiteAccess = array()) { $configResolver = new ConfigResolver($groupsBySiteAccess, $defaultNS, $undefinedStrategy); $configResolver->setSiteAccess($this->siteAccess); $configResolver->setContainer($this->containerMock); return $configResolver; }
public function testGlobalLayout() { ConfigurationProcessor::setAvailableSiteAccesses(array('sa1', 'sa2', 'sa3')); $groupsBySiteAccess = array('sa2' => array('sa_group')); ConfigurationProcessor::setGroupsBySiteAccess($groupsBySiteAccess); $layoutSa1 = 'module_layout_for_sa1.html.twig'; $layoutSaGroup = 'module_layout_for_sa_group.html.twig'; $defaultLayout = null; $config = array('enabled' => true, 'root_dir' => __DIR__, 'system' => array('sa1' => array('templating' => array('module_layout' => $layoutSa1)), 'sa_group' => array('templating' => array('module_layout' => $layoutSaGroup)))); $this->load($config); $this->assertContainerBuilderHasParameter('ezpublish_legacy.default.module_default_layout', $defaultLayout); // Testing values with real ConfigResolver $configResolver = new ConfigResolver($groupsBySiteAccess, 'foo'); $configResolver->setContainer($this->container); $this->assertSame($layoutSa1, $configResolver->getParameter('module_default_layout', 'ezpublish_legacy', 'sa1')); $this->assertSame($layoutSaGroup, $configResolver->getParameter('module_default_layout', 'ezpublish_legacy', 'sa2')); $this->assertSame($defaultLayout, $configResolver->getParameter('module_default_layout', 'ezpublish_legacy', 'sa3')); }
protected function load( array $configurationValues = array() ) { parent::load( $configurationValues ); $this->configResolver->setContainer( $this->container ); }