/**
  * 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.');
 }