public function testGetSortAttributesByMashableInboxModelClassNames() { $conversationRules = new ConversationMashableInboxRules(); $missionRules = new MissionMashableInboxRules(); $sortAttributes = MashableUtil::getSortAttributesByMashableInboxModelClassNames(array('Conversation', 'Mission')); $this->assertEquals($conversationRules->getMachableInboxOrderByAttributeName(), $sortAttributes['Conversation']); $this->assertEquals($missionRules->getMachableInboxOrderByAttributeName(), $sortAttributes['Mission']); }
/** * Gets the listView that should be rendered based on the mashableInboxForm params * @param MashableInboxForm $mashableInboxForm * @return \MashableInboxListView */ private function getMashableInboxListView($mashableInboxForm) { $modelClassNames = array_keys(MashableUtil::getModelDataForCurrentUserByInterfaceName('MashableInboxInterface')); $modelClassNamesAndSearchAttributeMetadataForMashableInbox = MashableUtil::getSearchAttributeMetadataForMashableInboxByModelClassName($modelClassNames, $mashableInboxForm->filteredBy, $mashableInboxForm->searchTerm); $modelClassNamesAndSortAttributes = MashableUtil::getSortAttributesByMashableInboxModelClassNames($modelClassNames); $dataProvider = new RedBeanModelsDataProvider('MashableInbox', $modelClassNamesAndSortAttributes, true, $modelClassNamesAndSearchAttributeMetadataForMashableInbox, array('pagination' => array('pageSize' => $this->pageSize))); $listView = new MashableInboxListView($this->getId(), $this->getModule()->getId(), 'MashableInbox', $dataProvider, array(), null, array('paginationParams' => GetUtil::getData())); return $listView; }