/** @test */ public function getFilterByFilterIdentifierReturnsExpectedFilter() { $dataBackendFactoryMock = $this->getDataBackendFactoryMockForListConfigurationAndListIdentifier($this->configurationBuilderMock->getSettings(), $this->configurationBuilderMock->getListIdentifier()); $filterboxFactory = $this->objectManager->get('Tx_PtExtlist_Domain_Model_Filter_FilterboxFactory'); /* @var $filterboxFactory Tx_PtExtlist_Domain_Model_Filter_FilterboxFactory */ $filterboxFactory->setDataBackendFactory($dataBackendFactoryMock); $filterbox = $filterboxFactory->createInstance($this->configurationBuilderMock->buildFilterConfiguration()->getFilterBoxConfig('testfilterbox')); $this->assertSame('testfilterbox', $filterbox->getFilterByFilterIdentifier('filter1')->getFilterBoxIdentifier()); }
/** * Factory method for creating filterbox collection for a given configuration builder * * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder * @param boolean $resetFilterBoxCollection * @return Tx_PtExtlist_Domain_Model_Filter_FilterboxCollection */ public function createInstance(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder, $resetFilterBoxCollection) { if ($this->instances[$configurationBuilder->getListIdentifier()] === null || $resetFilterBoxCollection === true) { $filterboxConfigCollection = $configurationBuilder->buildFilterConfiguration(); $filterboxCollection = $this->objectManager->get('Tx_PtExtlist_Domain_Model_Filter_FilterboxCollection', $configurationBuilder); /* @var $filterboxCollection Tx_PtExtlist_Domain_Model_Filter_FilterboxCollection */ foreach ($filterboxConfigCollection as $filterboxConfiguration) { /* @var $filterboxConfiguration Tx_PtExtlist_Domain_Configuration_Filters_FilterboxConfig */ $filterbox = $this->filterboxFactory->createInstance($filterboxConfiguration); $filterboxCollection->addFilterBox($filterbox, $filterbox->getfilterboxIdentifier()); } $this->instances[$configurationBuilder->getListIdentifier()] = $filterboxCollection; } return $this->instances[$configurationBuilder->getListIdentifier()]; }
public function testBuildFilterBoxConfiguration() { $settings = $this->buildTypoScriptConfigForConfigBuilder('tsTestList'); $configurationBuilder = new Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder($settings, 't3BackendTestList'); $configurationBuilder->buildFilterConfiguration(); }