public function testToStringFunction() { $types = array('length()' => 'int', 'position()' => 'int', 'substring()' => 'string'); $translations = array('length()' => 'strlen($1)', 'position()' => 'strpos($1,$2)', 'substring()' => 'substr($1,$2,$3)'); $expr = new MW_Common_Criteria_Expression_Compare_PHP('==', 'length("string")', 6); $this->assertEquals("strlen('string') == 6", $expr->toString($types, $translations)); $expr = new MW_Common_Criteria_Expression_Compare_PHP('==', 'position("abcde", "c")', 2); $this->assertEquals("strpos('abcde','c') == 2", $expr->toString($types, $translations)); $expr = new MW_Common_Criteria_Expression_Compare_PHP('==', 'substring("hello world", 0, 5)', 'hello'); $this->assertEquals("substr('hello world',0,5) == 'hello'", $expr->toString($types, $translations)); }
/** * 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_PHP::getOperators(), 'compare' => MW_Common_Criteria_Expression_Compare_PHP::getOperators(), 'sort' => MW_Common_Criteria_Expression_Sort_PHP::getOperators()); }