Commit e47db28d authored by Bas de Nooijer's avatar Bas de Nooijer

Merge branch 'develop' into feature/nextgen

Conflicts:
	library/Solarium/QueryType/Select/Query/Component/FacetSet.php
	tests/Solarium/Tests/QueryType/Select/Query/Component/FacetSetTest.php
parents 48baa9be 30e879b1
......@@ -441,44 +441,48 @@ class FacetSet extends Component
* Get a facet field instance
*
* @param mixed $options
* @param bool $add
* @return Facet\Field
*/
public function createFacetField($options = null)
public function createFacetField($options = null, $add = true)
{
return $this->createFacet(self::FACET_FIELD, $options);
return $this->createFacet(self::FACET_FIELD, $options, $add);
}
/**
* Get a facet query instance
*
* @param mixed $options
* @param bool $add
* @return Facet\Query
*/
public function createFacetQuery($options = null)
public function createFacetQuery($options = null, $add = true)
{
return $this->createFacet(self::FACET_QUERY, $options);
return $this->createFacet(self::FACET_QUERY, $options, $add);
}
/**
* Get a facet multiquery instance
*
* @param mixed $options
* @param bool $add
* @return Facet\MultiQuery
*/
public function createFacetMultiQuery($options = null)
public function createFacetMultiQuery($options = null, $add = true)
{
return $this->createFacet(self::FACET_MULTIQUERY, $options);
return $this->createFacet(self::FACET_MULTIQUERY, $options, $add);
}
/**
* Get a facet range instance
*
* @param mixed $options
* @param bool $add
* @return Facet\Range
*/
public function createFacetRange($options = null)
public function createFacetRange($options = null, $add = true)
{
return $this->createFacet(self::FACET_RANGE, $options);
return $this->createFacet(self::FACET_RANGE, $options, $add);
}
}
......@@ -333,52 +333,72 @@ class FacetSetTest extends \PHPUnit_Framework_TestCase
$this->facetSet->createFacet('invalidtype');
}
public function testCreateFacetField()
public function createFacetAddProvider()
{
return array(
array(true),
array(false),
);
}
/**
* @dataProvider createFacetAddProvider
*/
public function testCreateFacetField($add)
{
$options = array('optionA' => 1, 'optionB' => 2);
$observer = $this->getMock('Solarium\QueryType\Select\Query\Component\FacetSet', array('createFacet'));
$observer->expects($this->once())
->method('createFacet')
->with($this->equalTo(FacetSet::FACET_FIELD), $this->equalTo($options));
->with($this->equalTo(FacetSet::FACET_FIELD), $this->equalTo($options), $add);
$observer->createFacetField($options);
$observer->createFacetField($options, $add);
}
public function testCreateFacetQuery()
/**
* @dataProvider createFacetAddProvider
*/
public function testCreateFacetQuery($add)
{
$options = array('optionA' => 1, 'optionB' => 2);
$observer = $this->getMock('Solarium\QueryType\Select\Query\Component\FacetSet', array('createFacet'));
$observer->expects($this->once())
->method('createFacet')
->with($this->equalTo(FacetSet::FACET_QUERY), $this->equalTo($options));
->with($this->equalTo(FacetSet::FACET_QUERY), $this->equalTo($options), $add);
$observer->createFacetQuery($options);
$observer->createFacetQuery($options, $add);
}
public function testCreateFacetMultiQuery()
/**
* @dataProvider createFacetAddProvider
*/
public function testCreateFacetMultiQuery($add)
{
$options = array('optionA' => 1, 'optionB' => 2);
$observer = $this->getMock('Solarium\QueryType\Select\Query\Component\FacetSet', array('createFacet'));
$observer->expects($this->once())
->method('createFacet')
->with($this->equalTo(FacetSet::FACET_MULTIQUERY), $this->equalTo($options));
->with($this->equalTo(FacetSet::FACET_MULTIQUERY), $this->equalTo($options), $add);
$observer->createFacetMultiQuery($options);
$observer->createFacetMultiQuery($options, $add);
}
public function testCreateFacetRange()
/**
* @dataProvider createFacetAddProvider
*/
public function testCreateFacetRange($add)
{
$options = array('optionA' => 1, 'optionB' => 2);
$observer = $this->getMock('Solarium\QueryType\Select\Query\Component\FacetSet', array('createFacet'));
$observer->expects($this->once())
->method('createFacet')
->with($this->equalTo(FacetSet::FACET_RANGE), $this->equalTo($options));
->with($this->equalTo(FacetSet::FACET_RANGE), $this->equalTo($options), $add);
$observer->createFacetRange($options);
$observer->createFacetRange($options, $add);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment