public function addCondition($condition)
 {
     if (!$condition instanceof App_ListFilter_Rule_Condition_Interface) {
         $condition = App_ListFilter_Rule_Condition_Factory::createCondition($condition);
     }
     $this->_conditions[] = $condition;
 }
 public function testOrOperatorFactory()
 {
     $condition = App_ListFilter_Rule_Condition_Factory::createCondition(array('type' => 'orOperator', 'conditions' => array(array('type' => 'sortBy', 'operator' => App_ListFilter_Rule_Condition_SortBy::EQUAL, 'comparedValue' => 'pepito', 'inverted' => true), array('type' => 'groupBy', 'operator' => App_ListFilter_Rule_Condition_GroupBy::EQUAL, 'comparedValue' => 'pepito', 'inverted' => true), array('type' => 'filterBy', 'operator' => App_ListFilter_Rule_Condition_FilterBy::GREATER_THAN, 'comparedValue' => 'equal', 'fieldName' => 'min', 'filterField' => 'fieldName1', 'inverted' => true, 'fromScopeVar' => 'scopeVar1', 'scopeVar' => 'scopeVar2'))));
     $this->assertInstanceOf('App_ListFilter_Rule_Condition_OrOperator', $condition);
     $subconds = $condition->getConditions();
     $this->assertEquals(3, count($subconds), "Conditions count");
     $this->_checkSortByCondition($subconds[0]);
     $this->_checkGroupByCondition($subconds[1]);
     $this->_checkFilterByCondition($subconds[2]);
 }