public function testResolveSelectedListAttributesForSearchModelFromSourceData()
 {
     $model = new AAASearchFormTestModel(new A());
     $listAttributesSelector = new ListAttributesSelector('AListView', 'TestModule');
     $model->setListAttributesSelector($listAttributesSelector);
     $dataCollection = new SavedSearchAttributesDataCollection($model);
     $getArrayName = 'someArray';
     $dataCollection->resolveSelectedListAttributesForSearchModelFromSourceData();
     $this->assertEquals(array('name'), $model->getListAttributesSelector()->getSelected());
     //Test passing a value in the GET
     $_GET['AAASearchFormTestModel'][SearchForm::SELECTED_LIST_ATTRIBUTES] = 'notAnArray';
     $dataCollection->resolveSelectedListAttributesForSearchModelFromSourceData();
     $this->assertEquals(array('name'), $model->getListAttributesSelector()->getSelected());
     $_GET['AAASearchFormTestModel'][SearchForm::SELECTED_LIST_ATTRIBUTES] = array('All');
     $dataCollection->resolveSelectedListAttributesForSearchModelFromSourceData();
     $this->assertEquals(array('All'), $model->getListAttributesSelector()->getSelected());
     $_GET['AAASearchFormTestModel'][SearchForm::SELECTED_LIST_ATTRIBUTES] = array('name', 'a');
     $dataCollection->resolveSelectedListAttributesForSearchModelFromSourceData();
     $this->assertEquals(array('name', 'a'), $model->getListAttributesSelector()->getSelected());
 }
 protected function setStickyData($searchModel, $stickySearchKey = null, $setSticky = true, $sourceData)
 {
     if ($searchModel instanceof SavedDynamicSearchForm) {
         if ($stickySearchKey != null && isset($sourceData['clearingSearch']) && $sourceData['clearingSearch']) {
             StickySearchUtil::clearDataByKey($stickySearchKey);
         }
         $dataCollection = new SavedSearchAttributesDataCollection($searchModel);
         if ($stickySearchKey != null && null != ($stickySearchData = StickySearchUtil::getDataByKey($stickySearchKey))) {
             SavedSearchUtil::resolveSearchFormByStickyDataAndModel($stickySearchData, $searchModel);
             SavedSearchUtil::resolveSearchFormByStickySortData($sourceData, $searchModel, $stickySearchData);
             SearchUtil::resolveSearchFormByStickyFilterByStarredData($sourceData, $searchModel, $stickySearchData);
             SearchUtil::resolveSearchFormByStickyFilteredByData($sourceData, $searchModel, $stickySearchData);
             $dataCollection = new SavedSearchAttributesDataCollection($searchModel);
         } else {
             SavedSearchUtil::resolveSearchFormByData($sourceData, $searchModel);
             if ($searchModel->savedSearchId != null) {
                 $dataCollection = new SavedSearchAttributesDataCollection($searchModel);
             }
         }
         if ($stickySearchKey != null && ($setSticky || $searchModel->getKanbanBoard() != null && $searchModel->getKanbanBoard()->getClearSticky())) {
             if ($stickySearchData == null) {
                 $stickySearchData = array();
             }
             $dataCollection->setSourceData($sourceData);
             SavedSearchUtil::setDataByKeyAndDataCollection($stickySearchKey, $dataCollection, $stickySearchData);
         }
         $searchModel->loadSavedSearchUrl = Yii::app()->createUrl($this->getModule()->getId() . '/' . $this->getId() . '/list/');
     }
 }