public function testRegisteredPolicies() { $policies1 = ['custom_module' => ['custom_function_1' => null, 'custom_function_2' => ['CustomLimitation']], 'helloworld' => ['foo' => ['bar'], 'baz' => null]]; $this->extension->addPolicyProvider(new StubPolicyProvider($policies1)); $policies2 = ['custom_module2' => ['custom_function_3' => null, 'custom_function_4' => ['CustomLimitation2', 'CustomLimitation3']], 'helloworld' => ['foo' => ['additional_limitation'], 'some' => ['thingy', 'thing', 'but', 'wait']]]; $this->extension->addPolicyProvider(new StubPolicyProvider($policies2)); $expectedPolicies = ['custom_module' => ['custom_function_1' => [], 'custom_function_2' => ['CustomLimitation' => true]], 'helloworld' => ['foo' => ['bar' => true, 'additional_limitation' => true], 'baz' => [], 'some' => ['thingy' => true, 'thing' => true, 'but' => true, 'wait' => true]], 'custom_module2' => ['custom_function_3' => [], 'custom_function_4' => ['CustomLimitation2' => true, 'CustomLimitation3' => true]]]; $this->load(); self::assertContainerBuilderHasParameter('ezpublish.api.role.policy_map'); self::assertEquals($expectedPolicies, $this->container->getParameter('ezpublish.api.role.policy_map')); }
protected function getContainerExtensions() { $extension = new EzPublishCoreExtension([new Parser\Page(), new Parser\BlockView()]); $extension->addDefaultSettings(__DIR__ . '/../../../../../bundle/Resources/config', ['default_settings.yml']); $extension->addConfigurationRegistrar(function (array $config, ContainerBuilder $container) { if (isset($config['ezpage']['layouts'])) { $container->setParameter('ezpublish.ezpage.layouts', $config['ezpage']['layouts'] + $container->getParameter('ezpublish.ezpage.layouts')); } if (isset($config['ezpage']['blocks'])) { $container->setParameter('ezpublish.ezpage.blocks', $config['ezpage']['blocks'] + $container->getParameter('ezpublish.ezpage.blocks')); } if (isset($config['ezpage']['enabledLayouts'])) { $container->setParameter('ezpublish.ezpage.enabledLayouts', $config['ezpage']['enabledLayouts'] + $container->getParameter('ezpublish.ezpage.enabledLayouts')); } if (isset($config['ezpage']['enabledBlocks'])) { $container->setParameter('ezpublish.ezpage.enabledBlocks', $config['ezpage']['enabledBlocks'] + $container->getParameter('ezpublish.ezpage.enabledBlocks')); } }); return [$extension]; }
/** * Return an array of container extensions you need to be registered for each test (usually just the container * extension you are testing. * * @return ExtensionInterface[] */ protected function getContainerExtensions() { $extension = new EzPublishCoreExtension(array(new XmlTextConfigParser())); $extension->addDefaultSettings(__DIR__ . '/../../../../../../bundle/Resources/config', ['default_settings.yml']); return [$extension]; }