/** @test */
 public function testGetMultiple()
 {
     $selectFilter = $this->objectManager->get('Tx_PtExtlist_Domain_Model_Filter_SelectFilter');
     /* @var $selectFilter Tx_PtExtlist_Domain_Model_Filter_SelectFilter */
     $selectFilter->_injectGpVarsAdapter(new Tx_PtExtbase_State_GpVars_GpVarsAdapter('pt_extlist'));
     $filterConfiguration = new Tx_PtExtlist_Domain_Configuration_Filters_FilterConfig($this->configurationBuilderMock, array('filterIdentifier' => 'test', 'filterClassName' => 'Tx_PtExtlist_Domain_Model_Filter_SelectFilter', 'partialPath' => 'Filter/SelectFilter', 'fieldIdentifier' => 'field1', 'filterField' => 'field2', 'displayFields' => 'field1', 'excludeFilters' => 'filterbox1.filter1', 'multiple' => 1), 'test');
     $selectFilter->_injectFilterConfig($filterConfiguration);
     $sessionManagerMock = $this->getMock('Tx_PtExtbase_State_Session_SessionPersistenceManager', array(), array(), '', FALSE);
     $dataBackendMock = new Tx_PtExtlist_Domain_DataBackend_MySqlDataBackend_MySqlDataBackend($this->configurationBuilderMock);
     $dataBackendMock->_injectFieldConfigurationCollection($this->configurationBuilderMock->buildFieldsConfiguration());
     $selectFilter->_injectDataBackend($dataBackendMock);
     $selectFilter->init();
     $this->assertEquals(1, $selectFilter->getMultiple());
 }
 /**
  * Utility Methods
  *
  * @param array $filterSettings
  * @return Tx_PtExtlist_Domain_Model_Filter_AbstractTimeSpanFilter
  */
 public function buildAccessibleAbstractTimeSpanFilter($filterSettings = NULL)
 {
     if (!$filterSettings) {
         $filterSettings = $this->defaultFilterSettings;
     }
     $gpVarsAdapgerMock = $this->getMock('Tx_PtExtbase_State_GpVars_GpVarsAdapter', array(), array(), '', FALSE);
     /* @var $gpVarsAdapter Tx_PtExtbase_State_GpVars_GpVarsAdapter */
     $accessibleClassName = $this->buildAccessibleProxy('Tx_PtExtlist_Domain_Model_Filter_AbstractTimeSpanFilter');
     $abstractTimeSpanFilter = $this->getMockForAbstractClass($accessibleClassName);
     /* @var $abstractTimeSpanFilter Tx_PtExtlist_Domain_Model_Filter_AbstractTimeSpanFilter */
     $filterConfiguration = new Tx_PtExtlist_Domain_Configuration_Filters_FilterConfig($this->configurationBuilderMock, $filterSettings, 'test');
     $dataBackendMock = new Tx_PtExtlist_Domain_DataBackend_MySqlDataBackend_MySqlDataBackend($this->configurationBuilderMock);
     $dataBackendMock->_injectFieldConfigurationCollection($this->configurationBuilderMock->buildFieldsConfiguration());
     $abstractTimeSpanFilter->_injectFilterConfig($filterConfiguration);
     $abstractTimeSpanFilter->_injectDataBackend($dataBackendMock);
     $abstractTimeSpanFilter->_injectGpVarsAdapter($gpVarsAdapgerMock);
     $abstractTimeSpanFilter->_set('filterValueStart', date_create('2000-01-01'));
     $abstractTimeSpanFilter->_set('filterValueEnd', date_create());
     $abstractTimeSpanFilter->init();
     return $abstractTimeSpanFilter;
 }
 /** @test */
 public function buildSelectPartWithSpecialStringReturnsExpectedString()
 {
     $pagerCollectionMock = $this->getMock('Tx_PtExtlist_Domain_Model_Pager_PagerCollection', array('setItemCount'), array(), '', false, false);
     $dataBackend = new Tx_PtExtlist_Domain_DataBackend_MySqlDataBackend_MySqlDataBackend($this->configurationBuilder);
     $dataBackend->_injectPagerCollection($pagerCollectionMock);
     $dataBackend->_injectQueryInterpreter(new Tx_PtExtlist_Domain_DataBackend_MySqlDataBackend_MySqlInterpreter_MySqlInterpreter());
     $fieldConfigurationCollection = new Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfigCollection();
     $fieldConfigurationCollection->addItem($this->getFieldConfigMockForSpecialAndIdentifier('specialString', 'testFieldIdentifier'));
     $dataBackend->_injectFieldConfigurationCollection($fieldConfigurationCollection);
     $selectPartForFieldConfigurationCollection = $dataBackend->buildSelectPart();
     $expectedSelectPart = '(specialString) AS testFieldIdentifier';
     $this->assertTrue($selectPartForFieldConfigurationCollection == $expectedSelectPart, 'Select part for field configuration collection should be "' . $expectedSelectPart . '" but was ' . $selectPartForFieldConfigurationCollection);
 }
 protected function buildAccessibleAbstractGroupDataFilter($filterSettings = NULL)
 {
     $this->defaultFilterSettings = $filterSettings;
     if (!$this->defaultFilterSettings) {
         $this->defaultFilterSettings = array('filterIdentifier' => 'test', 'filterClassName' => 'Tx_PtExtlist_Domain_Model_Filter_SelectFilter', 'partialPath' => 'Filter/SelectFilter', 'fieldIdentifier' => 'field1', 'displayFields' => 'field1,field2', 'filterField' => 'field3', 'invert' => '0');
     }
     $accessibleClassName = $this->buildAccessibleProxy('Tx_PtExtlist_Domain_Model_Filter_AbstractOptionsFilter');
     $abstractOptionsFilter = $this->getMockForAbstractClass($accessibleClassName);
     $filterConfiguration = new Tx_PtExtlist_Domain_Configuration_Filters_FilterConfig($this->configurationBuilderMock, $this->defaultFilterSettings, 'test');
     $gpVarAdapterMock = $this->getMock('Tx_PtExtbase_State_GpVars_GpVarsAdapter', array(), array(), '', FALSE);
     /* @var $gpVarAdapterMock Tx_PtExtbase_State_GpVars_GpVarsAdapter */
     $dataBackendMock = new Tx_PtExtlist_Domain_DataBackend_MySqlDataBackend_MySqlDataBackend($this->configurationBuilderMock);
     $dataBackendMock->_injectFieldConfigurationCollection($this->configurationBuilderMock->buildFieldsConfiguration());
     /* @var $abstractOptionsFilter Tx_PtExtlist_Domain_Model_Filter_AbstractOptionsFilter */
     $abstractOptionsFilter->_injectFilterConfig($filterConfiguration);
     $abstractOptionsFilter->_injectDataBackend($dataBackendMock);
     $abstractOptionsFilter->_injectGpVarsAdapter($gpVarAdapterMock);
     $abstractOptionsFilter->init();
     return $abstractOptionsFilter;
 }