/**
  * Factory method to create a sorting state from a given session array
  *
  * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder
  * @param array $sessionArray
  * @return Tx_PtExtlist_Domain_Model_Sorting_SortingStateCollection
  */
 public static function getInstanceBySessionArray(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder, array $sessionArray)
 {
     $sortingStateCollection = new Tx_PtExtlist_Domain_Model_Sorting_SortingStateCollection();
     foreach ($sessionArray as $sortingStateSessionArray) {
         $sortingStateCollection->addSortingState(Tx_PtExtlist_Domain_Model_Sorting_SortingState::getInstanceBySessionArray($configurationBuilder, $sortingStateSessionArray));
     }
     return $sortingStateCollection;
 }
Example #2
0
 /** @test */
 public function getInstanceBySessionArrayReturnsCorrectSortingState()
 {
     $fieldName = 'testFieldName';
     $sortingDirection = Tx_PtExtlist_Domain_QueryObject_Query::SORTINGSTATE_ASC;
     $dummySessionArray = array('fieldName' => $fieldName, 'direction' => $sortingDirection);
     $fieldConfigurationMock = $this->getMock(Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfig, array(), array(), '', false);
     $fieldsConfigurationMock = $this->getMock('Tx_PtExtlist_Domain_Configuration_Data_Fields_FieldConfigCollection', array('getFieldConfigByIdentifier'), array(), '', false);
     $fieldsConfigurationMock->expects($this->once())->method('getFieldConfigByIdentifier')->will($this->returnValue($fieldConfigurationMock));
     $configurationBuilderMock = $this->getMock('Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder', array('buildFieldsConfiguration'), array(), '', false);
     $configurationBuilderMock->expects($this->once())->method('buildFieldsConfiguration')->will($this->returnValue($fieldsConfigurationMock));
     $sortingState = Tx_PtExtlist_Domain_Model_Sorting_SortingState::getInstanceBySessionArray($configurationBuilderMock, $dummySessionArray);
     $this->assertEquals($sortingState->getField(), $fieldConfigurationMock);
     $this->assertEquals($sortingState->getDirection(), $sortingDirection);
 }