public function testKanbanBoardMethods() { $searchModel = new AAASearchFormTestModel(new AAA()); $kanbanBoard = new KanbanBoard(new AAA(), 'industry'); $kanbanBoard->setGroupByAttributeVisibleValues(array('a', 'b')); $kanbanBoard->setSelectedTheme('someTheme'); $searchModel->setKanbanBoard($kanbanBoard); $dataCollection = new SearchAttributesDataCollection($searchModel); $this->assertTrue($dataCollection->hasKanbanBoard()); $this->assertEquals($kanbanBoard, $dataCollection->getKanbanBoard()); $this->assertFalse($dataCollection->shouldClearStickyForKanbanBoard()); $this->assertEquals(array('a', 'b'), $dataCollection->getKanbanBoardGroupByAttributeVisibleValuesFromModel()); $this->assertEquals('someTheme', $dataCollection->getKanbanBoardSelectedThemeFromModel()); }
public function testSetGetClearStickySearchByKey() { StickySearchUtil::clearDataByKey('abc'); $value = StickySearchUtil::getDataByKey('abc'); $this->assertNull($value); $savedSearch = new SavedSearch(); $savedSearch->name = 'something'; $savedSearch->viewClassName = 'view'; $savedSearch->serializedData = 'someString'; $saved = $savedSearch->save(); $this->assertTrue($saved); $this->assertTrue($savedSearch->id > 0); $searchModel = new AAASavedDynamicSearchFormTestModel(new AAA(false)); $listAttributesSelector = new ListAttributesSelector('AListView', 'TestModule'); $searchModel->setListAttributesSelector($listAttributesSelector); $searchModel->dynamicStructure = '1 and 5'; $searchModel->dynamicClauses = array('a', 'b'); $searchModel->anyMixedAttributes = 'abcdef'; $searchModel->savedSearchId = $savedSearch->id; $searchModel->setAnyMixedAttributesScope('xyz'); $kanbanBoard = new KanbanBoard(new AAA(), 'industry'); $kanbanBoard->setIsActive(); $kanbanBoard->setGroupByAttributeVisibleValues(array('c', 'd')); $kanbanBoard->setSelectedTheme('red'); $searchModel->setKanbanBoard($kanbanBoard); $searchModel->getListAttributesSelector()->setSelected(array('aaaMember', 'aaaMember2')); $dataCollection = new SavedSearchAttributesDataCollection($searchModel); SavedSearchUtil::setDataByKeyAndDataCollection('abc', $dataCollection, array()); $stickyData = StickySearchUtil::getDataByKey('abc'); $compareData = array('dynamicClauses' => array('a', 'b'), 'dynamicStructure' => '1 and 5', 'anyMixedAttributes' => 'abcdef', 'anyMixedAttributesScope' => 'xyz', 'savedSearchId' => $savedSearch->id, SearchForm::SELECTED_LIST_ATTRIBUTES => array('aaaMember', 'aaaMember2'), 'groupByAttributeVisibleValues' => array('c', 'd'), 'selectedTheme' => 'red'); $this->assertEquals($compareData, $stickyData); $searchModel = new AAASavedDynamicSearchFormTestModel(new AAA(false)); $kanbanBoard = new KanbanBoard(new AAA(), 'industry'); $searchModel->setKanbanBoard($kanbanBoard); $listAttributesSelector = new ListAttributesSelector('AListView', 'TestModule'); $searchModel->setListAttributesSelector($listAttributesSelector); SavedSearchUtil::resolveSearchFormByStickyDataAndModel($stickyData, $searchModel); $this->assertEquals('something', $searchModel->savedSearchName); $this->assertEquals($savedSearch->id, $searchModel->savedSearchId); $this->assertEquals('abcdef', $searchModel->anyMixedAttributes); $this->assertEquals('xyz', $searchModel->getAnyMixedAttributesScope()); $this->assertEquals('1 and 5', $searchModel->dynamicStructure); $this->assertEquals(array('a', 'b'), $searchModel->dynamicClauses); $this->assertEquals(array('aaaMember', 'aaaMember2'), $searchModel->getListAttributesSelector()->getSelected()); $this->assertEquals(array('c', 'd'), $searchModel->getKanbanBoard()->getGroupByAttributeVisibleValues()); $this->assertEquals('red', $searchModel->getKanbanBoard()->getSelectedTheme()); }
public function testResolveVisibleValuesForAdaptedMetadata() { $metadata = array('clauses' => array(), 'structure' => ''); $kanbanBoard = new KanbanBoard(new AAA(), 'industry'); $kanbanBoard->resolveVisibleValuesForAdaptedMetadata($metadata); $compareData = array(); $compareData['structure'] = '(1 or 2 or 3 or 4)'; $compareData['clauses'][1] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Automotive'); $compareData['clauses'][2] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Adult Entertainment'); $compareData['clauses'][3] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Financial Services'); $compareData['clauses'][4] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Mercenaries & Armaments'); $this->assertEquals($compareData, $metadata); //Now resolve with pre-existing metadata $metadata = array('clauses' => array(1 => 'firstClause'), 'structure' => '1'); $kanbanBoard = new KanbanBoard(new AAA(), 'industry'); $kanbanBoard->resolveVisibleValuesForAdaptedMetadata($metadata); $compareData['structure'] = '(1) and (2 or 3 or 4 or 5)'; $compareData['clauses'][1] = 'firstClause'; $compareData['clauses'][2] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Automotive'); $compareData['clauses'][3] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Adult Entertainment'); $compareData['clauses'][4] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Financial Services'); $compareData['clauses'][5] = array('attributeName' => 'industry', 'relatedAttributeName' => 'value', 'operatorType' => 'equals', 'value' => 'Mercenaries & Armaments'); $this->assertEquals($compareData, $metadata); }
public function resolveKanbanBoardOptionsForSearchModelFromSourceData() { return KanbanBoard::resolveKanbanBoardOptionsForSearchModelFromArray($this->model, get_class($this->model), $this->getSourceData()); }