Exemple #1
0
 public function testToString()
 {
     if (!class_exists('Zend_Search_Lucene_Search_Query_MultiTerm')) {
         $this->markTestSkipped('Zend_Search_Lucene_Search_Query_MultiTerm is not available');
     }
     $types = array('list' => SORT_STRING, 'string' => SORT_STRING, 'float' => SORT_NUMERIC, 'int' => SORT_NUMERIC, 'undefined' => SORT_NUMERIC, 'bool' => SORT_NUMERIC, 'test()' => SORT_NUMERIC, 'test2()' => SORT_STRING);
     $translations = array('list' => 't.list', 'string' => 't.string', 'float' => 't.float', 'int' => 't.int', 'undefined' => 't.undefined', 'bool' => 't.bool', 'test()' => 'abc($1,$2)', 'test2()' => 'cdf($1,$2,$3)');
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('==', 'list', array('a', 'b', 'c'));
     $this->assertEquals("t.list:a t.list:b t.list:c", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('!=', 'list', array('a', 'b', 'c'));
     $this->assertEquals("-t.list:a -t.list:b -t.list:c", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('==', 'test("123","345")', array(456, 789));
     $this->assertEquals("abc(123,345):456 abc(123,345):789", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('!=', 'test(123,345)', array(456, 789));
     $this->assertEquals("-abc(123,345):456 -abc(123,345):789", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('==', 'test(12.3,4)', 4.56);
     $this->assertEquals("abc(12.3,4):4.56", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('~=', 'string', 'value');
     $this->assertEquals("(t.string:value*)", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('<', 'float', 0.1);
     $this->assertEquals("t.float:{null TO 0.1}", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('>', 'int', 10);
     $this->assertEquals("t.int:{10 TO null}", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('!=', 'undefined', null);
     $this->assertEquals("-t.undefined:(empty)", $expr->toString($types, $translations)->__toString());
     $expr = new MW_Common_Criteria_Expression_Compare_Lucene('==', 'bool', true);
     $this->assertEquals("t.bool:1", $expr->toString($types, $translations)->__toString());
 }
Exemple #2
0
 /**
  * Returns the available compare, combine and sort operators.
  *
  * @return array Associative list of lists (compare, combine, sort) containing the available operators
  */
 public function getOperators()
 {
     return array('combine' => MW_Common_Criteria_Expression_Combine_Lucene::getOperators(), 'compare' => MW_Common_Criteria_Expression_Compare_Lucene::getOperators(), 'sort' => MW_Common_Criteria_Expression_Sort_Lucene::getOperators());
 }