From b6559317d8767c3c36ef1a279d98302c77e572ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mantas=20Marcinkevi=C4=8Dius?= <marc.mantas@gmail.com> Date: Mon, 29 Aug 2016 14:09:34 +0300 Subject: [PATCH] added a test --- .../Pipeline/BucketScriptAggregationTest.php | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 tests/Aggregation/Pipeline/BucketScriptAggregationTest.php diff --git a/tests/Aggregation/Pipeline/BucketScriptAggregationTest.php b/tests/Aggregation/Pipeline/BucketScriptAggregationTest.php new file mode 100644 index 0000000..5dd8a05 --- /dev/null +++ b/tests/Aggregation/Pipeline/BucketScriptAggregationTest.php @@ -0,0 +1,63 @@ +<?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\ElasticsearchDSL\Tests\Aggregation\Pipeline; + +use ONGR\ElasticsearchDSL\Aggregation\Pipeline\BucketScriptAggregation; + +/** + * Unit test for bucket script pipeline aggregation. + */ +class BucketScriptAggregationTest extends \PHPUnit_Framework_TestCase +{ + /** + * Tests toArray method. + */ + public function testToArray() + { + $aggregation = new BucketScriptAggregation( + 'test', + [ + 'my_var1' => 'foo', + 'my_var2' => 'bar', + ] + ); + $aggregation->setScript('test script'); + $aggregation->addParameter('gap_policy', 'insert_zeros'); + + $expected = [ + 'bucket_script' => [ + 'buckets_path' => [ + 'my_var1' => 'foo', + 'my_var2' => 'bar', + ], + 'script' => 'test script', + 'gap_policy' => 'insert_zeros', + ], + ]; + + $this->assertEquals($expected, $aggregation->toArray()); + } + + /** + * Tests if the exception is thrown in getArray method if no + * buckets_path or script is set + * + * @expectedException \LogicException + * @expectedExceptionMessage `test` aggregation must have script set. + */ + public function testGetArrayException() + { + $agg = new BucketScriptAggregation('test', []); + + $agg->getArray(); + } +} -- GitLab