/** * Tests whether overriding processConditionValue() works correctly. */ public function testProcessConditionValueOverride() { $override = function (&$value) { if (isset($value)) { $value = ''; } }; $this->processor->setMethodOverride('processConditionValue', $override); $query = Utility::createQuery($this->index); $query->addCondition('text_field', 'foo'); $query->addCondition('string_field', NULL, '<>'); $query->addCondition('integer_field', 'bar'); $this->processor->preprocessSearchQuery($query); $expected = array(new Condition('string_field', NULL, '<>'), new Condition('integer_field', 'bar')); $this->assertEquals($expected, array_merge($query->getConditionGroup()->getConditions()), 'Conditions were preprocessed correctly.'); }