/** * Adds a setting filter to the pointcut filter composite * * @param string $operator The operator * @param string $configurationPath The path to the settings option, that should be used * @param PointcutFilterComposite $pointcutFilterComposite An instance of the pointcut filter composite. The result (ie. the custom filter) will be added to this composite object. * @return void */ protected function parseDesignatorSetting($operator, $configurationPath, PointcutFilterComposite $pointcutFilterComposite) { $filter = new PointcutSettingFilter($configurationPath); /** @var ConfigurationManager $configurationManager */ $configurationManager = $this->objectManager->get(ConfigurationManager::class); $filter->injectConfigurationManager($configurationManager); $pointcutFilterComposite->addFilter($operator, $filter); }
/** * @test * @expectedException \Neos\Flow\Aop\Exception\InvalidPointcutExpressionException */ public function filterThrowsAnExceptionForAnIncorectCondition() { $mockConfigurationManager = $this->getMockBuilder(ConfigurationManager::class)->disableOriginalConstructor()->getMock(); $settings['foo']['bar']['baz']['value'] = 'option value'; $filter = new Aop\Pointcut\PointcutSettingFilter('package.foo.bar.baz.value = "forgot to close quotes'); $filter->injectConfigurationManager($mockConfigurationManager); }