diff --git a/tests/Filter/BoolFilterTest.php b/tests/Query/BoolQueryTest.php similarity index 53% rename from tests/Filter/BoolFilterTest.php rename to tests/Query/BoolQueryTest.php index 0c78e8e8c85f81c36f59c6741f99518ae092daa4..85a32488c25daa4e6df402e94e2a9d099471a4ba 100644 --- a/tests/Filter/BoolFilterTest.php +++ b/tests/Query/BoolQueryTest.php @@ -11,9 +11,9 @@ namespace ONGR\ElasticsearchDSL\Tests\Unit\DSL\Aggregation; -use ONGR\ElasticsearchDSL\Filter\BoolFilter; -use ONGR\ElasticsearchDSL\Filter\MissingFilter; -use ONGR\ElasticsearchDSL\Filter\TermFilter; +use ONGR\ElasticsearchDSL\Query\BoolQuery; +use ONGR\ElasticsearchDSL\Query\MatchAllQuery; +use ONGR\ElasticsearchDSL\Query\TermQuery; /** * Unit test for Bool. @@ -23,11 +23,37 @@ class BoolFilterTest extends \PHPUnit_Framework_TestCase /** * Tests isRelevant method. */ - public function testBoolIsRelevant() + public function testBoolIsRelevantWithOneQuery() { - $bool = new BoolFilter(); + $bool = new BoolQuery(); $this->assertFalse($bool->isRelevant()); - $bool->add(new MissingFilter('test')); + $bool->add(new TermQuery('acme', 'foo')); + + $this->assertFalse($bool->isRelevant()); + } + + /** + * Tests isRelevant method when there is query added to should case. + */ + public function testBoolIsRelevantWithOneShouldQuery() + { + $bool = new BoolQuery(); + $this->assertFalse($bool->isRelevant()); + $bool->add(new TermQuery('acme', 'foo'), BoolQuery::SHOULD); + + $this->assertFalse($bool->isRelevant()); + } + + /** + * Tests isRelevant method with 2 queries. + */ + public function testBoolIsRelevantWithTwoQuery() + { + $bool = new BoolQuery(); + $this->assertFalse($bool->isRelevant()); + $bool->add(new TermQuery('acme', 'foo')); + $bool->add(new TermQuery('bar', 'go')); + $this->assertTrue($bool->isRelevant()); } @@ -35,12 +61,12 @@ class BoolFilterTest extends \PHPUnit_Framework_TestCase * Test for addToBool() without setting a correct bool operator. * * @expectedException \UnexpectedValueException - * @expectedExceptionMessage The bool operator Should is not supported + * @expectedExceptionMessage The provided bool operator is not supported */ public function testBoolAddToBoolException() { - $bool = new BoolFilter(); - $bool->add(new MissingFilter('test'), 'Should'); + $bool = new BoolQuery(); + $bool->add(new MatchAllQuery(), 'acme'); } /** @@ -48,10 +74,10 @@ class BoolFilterTest extends \PHPUnit_Framework_TestCase */ public function testBoolToArray() { - $bool = new BoolFilter(); - $bool->add(new TermFilter('key1', 'value1'), 'should'); - $bool->add(new TermFilter('key2', 'value2'), 'must'); - $bool->add(new TermFilter('key3', 'value3'), 'must_not'); + $bool = new BoolQuery(); + $bool->add(new TermQuery('key1', 'value1'), BoolQuery::SHOULD); + $bool->add(new TermQuery('key2', 'value2'), BoolQuery::MUST); + $bool->add(new TermQuery('key3', 'value3'), BoolQuery::MUST_NOT); $expected = [ 'should' => [ [ @@ -83,7 +109,7 @@ class BoolFilterTest extends \PHPUnit_Framework_TestCase */ public function testBoolGetType() { - $bool = new BoolFilter(); + $bool = new BoolQuery(); $result = $bool->getType(); $this->assertEquals('bool', $result); }