diff --git a/Aggregation/FilterAggregationTest.php b/Aggregation/FilterAggregationTest.php index ac05f997c576abff3bbef5eb3cdfd76bdc2246f4..745869bd083c2fd0b6e0215c90886683fa6b7f1a 100644 --- a/Aggregation/FilterAggregationTest.php +++ b/Aggregation/FilterAggregationTest.php @@ -69,7 +69,7 @@ class FilterAggregationTest extends \PHPUnit_Framework_TestCase ->method('getName') ->willReturn('agg_test_agg2'); - $aggregation->aggregations->addAggregation($aggregation2); + $aggregation->aggregations->add($aggregation2); $result = [ 'agg_test_agg' => [ diff --git a/Aggregation/GlobalAggregationTest.php b/Aggregation/GlobalAggregationTest.php index 255d74d454eaf5c50890eb57264cc7677c007d5b..1f64af05e3897eb6976f221c09f2b867b6cb7d15 100644 --- a/Aggregation/GlobalAggregationTest.php +++ b/Aggregation/GlobalAggregationTest.php @@ -41,7 +41,7 @@ class GlobalAggregationTest extends \PHPUnit_Framework_TestCase // Case #1 nested global aggregation. $aggregation = new GlobalAggregation('test_agg'); $aggregation2 = new GlobalAggregation('test_agg_2'); - $aggregation->aggregations->addAggregation($aggregation2); + $aggregation->aggregations->add($aggregation2); $result = [ 'agg_test_agg' => [ diff --git a/Aggregation/RangeAggregationTest.php b/Aggregation/RangeAggregationTest.php index 339552f8c758ebfbf2334607b6f7fe3709f57622..01140097ecc0448959c222b93e49ad8597ac136e 100644 --- a/Aggregation/RangeAggregationTest.php +++ b/Aggregation/RangeAggregationTest.php @@ -88,7 +88,7 @@ class RangeAggregationTest extends \PHPUnit_Framework_TestCase $aggregation2 = new RangeAggregation('test_agg_2'); $aggregation2->addRange('20', '20'); - $aggregation->aggregations->addAggregation($aggregation2); + $aggregation->aggregations->add($aggregation2); $result = [ 'agg_test_agg' => [ diff --git a/FriendlyBuilderBagTest.php b/FriendlyBuilderBagTest.php new file mode 100644 index 0000000000000000000000000000000000000000..e8c3f746529037f66565134a19853fa94b7e6c51 --- /dev/null +++ b/FriendlyBuilderBagTest.php @@ -0,0 +1,105 @@ +<?php + +/* + * This file is part of the ONGR package. + * + * (c) NFQ Technologies UAB <info@nfq.com> + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ONGR\ElasticsearchBundle\Tests\Unit\DSL; + + +use ONGR\ElasticsearchBundle\DSL\FriendlyBuilderBag; +use ONGR\ElasticsearchBundle\DSL\FriendlyBuilderInterface; + +class FriendlyBuilderBagTest extends \PHPUnit_Framework_TestCase +{ + /** + * Tests if bag knows if he has a builder. + */ + public function testHas() + { + $bag = new FriendlyBuilderBag( + [ + $this->getBuilder('foo'), + ] + ); + $this->assertTrue($bag->has('foo')); + } + + /** + * Tests if bag can remove a builder. + */ + public function testRemove() + { + $bag = new FriendlyBuilderBag( + [ + $this->getBuilder('foo'), + $this->getBuilder('baz'), + ] + ); + + $bag->remove('foo'); + + $this->assertFalse($bag->has('foo'), 'Foo builder should not exist anymore.'); + $this->assertTrue($bag->has('baz'), 'Baz builder should exist.'); + } + + /** + * Tests if bag can clear it's builders. + */ + public function testClear() + { + $bag = new FriendlyBuilderBag( + [ + $this->getBuilder('foo'), + $this->getBuilder('baz'), + ] + ); + + $bag->clear(); + + $this->assertEmpty($bag->all()); + } + + /** + * Tests if bag can get a builder. + */ + public function testGet() + { + $bag = new FriendlyBuilderBag( + [ + $this->getBuilder('baz'), + ] + ); + + $this->assertNotEmpty($bag->get('baz')); + } + + /** + * Returns builder. + * + * @param string $name + * + * @return \PHPUnit_Framework_MockObject_MockObject|FriendlyBuilderInterface + */ + private function getBuilder($name) + { + $friendlyBuilderMock = $this->getMock('ONGR\ElasticsearchBundle\DSL\FriendlyBuilderInterface'); + + $friendlyBuilderMock + ->expects($this->once()) + ->method('getName') + ->will($this->returnValue($name)); + + $friendlyBuilderMock + ->expects($this->any()) + ->method('toArray') + ->will($this->returnValue([])); + + return $friendlyBuilderMock; + } +}