From 75746c514ffa76f9760aedd055653c421e4195df Mon Sep 17 00:00:00 2001
From: Mantas <marc.mantas@gmail.com>
Date: Tue, 12 Jul 2016 15:21:18 +0300
Subject: [PATCH] added tests for the aggregation

---
 tests/Aggregation/SamplerAggregationTest.php | 64 ++++++++++++++++++++
 1 file changed, 64 insertions(+)
 create mode 100644 tests/Aggregation/SamplerAggregationTest.php

diff --git a/tests/Aggregation/SamplerAggregationTest.php b/tests/Aggregation/SamplerAggregationTest.php
new file mode 100644
index 0000000..1f32157
--- /dev/null
+++ b/tests/Aggregation/SamplerAggregationTest.php
@@ -0,0 +1,64 @@
+<?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;
+
+use ONGR\ElasticsearchDSL\Aggregation\SamplerAggregation;
+use ONGR\ElasticsearchDSL\Aggregation\TermsAggregation;
+
+/**
+ * Unit test for children aggregation.
+ */
+class SamplerAggregationTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * Tests getType method.
+     */
+    public function testGetType()
+    {
+        $aggregation = new SamplerAggregation('foo');
+        $result = $aggregation->getType();
+        $this->assertEquals('sampler', $result);
+    }
+
+    /**
+     * Tests toArray method.
+     */
+    public function testToArray()
+    {
+        $termAggregation = new TermsAggregation('acme');
+
+        $aggregation = new SamplerAggregation('foo');
+        $aggregation->addAggregation($termAggregation);
+        $aggregation->setField('name');
+        $aggregation->setShardSize(200);
+        $result = $aggregation->toArray();
+        $expected = [
+            'sampler' => [
+                'field' => 'name',
+                'shard_size' => 200,
+            ],
+            'aggregations' => [
+                $termAggregation->getName() => $termAggregation->toArray(),
+            ],
+        ];
+        $this->assertEquals($expected, $result);
+    }
+
+    /**
+     * Tests getArray method without provided shard size.
+     */
+    public function testGetArrayNoShardSize()
+    {
+        $aggregation = new SamplerAggregation('foo', 'bar');
+        $this->assertEquals(['field' => 'bar'], $aggregation->getArray());
+    }
+}
-- 
GitLab