diff --git a/tests/Aggregation/FilterAggregationTest.php b/tests/Aggregation/FilterAggregationTest.php index ce5111b9f8b8a387c891b1169fff03a61e9c366b..f95b37560977cf45c885ec6b37523ad63777fb0d 100644 --- a/tests/Aggregation/FilterAggregationTest.php +++ b/tests/Aggregation/FilterAggregationTest.php @@ -15,8 +15,10 @@ use ONGR\ElasticsearchDSL\Aggregation\AbstractAggregation; use ONGR\ElasticsearchDSL\Aggregation\FilterAggregation; use ONGR\ElasticsearchDSL\Aggregation\HistogramAggregation; use ONGR\ElasticsearchDSL\BuilderInterface; +use ONGR\ElasticsearchDSL\Filter\BoolFilter; use ONGR\ElasticsearchDSL\Filter\MatchAllFilter; use ONGR\ElasticsearchDSL\Filter\MissingFilter; +use ONGR\ElasticsearchDSL\Filter\TermFilter; class FilterAggregationTest extends \PHPUnit_Framework_TestCase { @@ -62,6 +64,28 @@ class FilterAggregationTest extends \PHPUnit_Framework_TestCase ], ]; + $out[] = [ + $aggregation, + $result, + ]; + + // Case #2 testing bool filter. + $aggregation = new FilterAggregation('test_agg'); + $matchAllFilter = new MatchAllFilter(); + $termFilter = new TermFilter('acme', 'foo'); + $boolFilter = new BoolFilter(); + $boolFilter->add($matchAllFilter); + $boolFilter->add($termFilter); + + $aggregation->setFilter($boolFilter); + + $result = [ + 'filter' => [ + $boolFilter->getType() => $boolFilter->toArray(), + ] + ]; + + $out[] = [ $aggregation, $result, @@ -123,12 +147,13 @@ class FilterAggregationTest extends \PHPUnit_Framework_TestCase */ public function testConstructorFilter() { - /** @var BuilderInterface|\PHPUnit_Framework_MockObject_MockObject $builderInterface */ - $builderInterface = $this->getMockForAbstractClass('ONGR\ElasticsearchDSL\BuilderInterface'); - $aggregation = new FilterAggregation('test', $builderInterface); + $matchAllFilter = new MatchAllFilter(); + $aggregation = new FilterAggregation('test', $matchAllFilter); $this->assertSame( [ - 'filter' => [null => null], + 'filter' => [ + $matchAllFilter->getType() => $matchAllFilter->toArray(), + ], ], $aggregation->toArray() );