public function testBuildQueryNumericWithRangeFactedWithTax() { update_option('numeric', array('field1' => 1)); update_option('fields', array('field1' => 1, 'field2' => 1)); update_option('field1_range', '-10,10-20,20-'); update_option('taxonomies', array('tax1' => 1)); $searcher = new Searcher(); $shoulds = array(); $filters = array(); $musts = array(); $facets = array('field1' => '10-20', 'tax1' => array('or' => array('value1', 'value2'))); $query = $searcher->_buildQuery('string', $facets); $this->assertEquals(array('query' => array('bool' => array('must' => array(array('range' => array('field1' => array('from' => 10, 'to' => 20)))))), 'filter' => array('bool' => array('should' => array(array('term' => array('tax1' => 'value1')), array('term' => array('tax1' => 'value2'))), 'must' => array(array('term' => array('blog_id' => 1))))), 'facets' => array('field1' => array('range' => array('field1' => array(array('to' => 10), array('from' => 10, 'to' => 20), array('from' => 20))), 'facet_filter' => array('bool' => array('must' => array(array('term' => array('blog_id' => 1)))))), 'tax1' => array('terms' => array('field' => 'tax1', 'size' => 100), 'facet_filter' => array('bool' => array('must' => array(array('term' => array('blog_id' => 1)))))))), $query); }