From 84d3369d9811a52591fc3357d6e436cfa75125eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Mantas=20Jonu=C5=A1as?= <mantas.jonusas@nfq.lt>
Date: Thu, 12 Mar 2015 11:03:06 +0200
Subject: [PATCH] Added geo distance aggregation

---
 Aggregation/GeoDistanceAggregationTest.php | 55 ++++++++++++++++++++++
 1 file changed, 55 insertions(+)
 create mode 100644 Aggregation/GeoDistanceAggregationTest.php

diff --git a/Aggregation/GeoDistanceAggregationTest.php b/Aggregation/GeoDistanceAggregationTest.php
new file mode 100644
index 0000000..73075a6
--- /dev/null
+++ b/Aggregation/GeoDistanceAggregationTest.php
@@ -0,0 +1,55 @@
+<?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\Aggregation;
+
+use ONGR\ElasticsearchBundle\DSL\Aggregation\GeoDistanceAggregation;
+
+class GeoDistanceAggregationTest extends \PHPUnit_Framework_TestCase
+{
+    /**
+     * Test if exception is thrown when field is not set.
+     *
+     * @expectedException \LogicException
+     * @expectedExceptionMessage Geo distance aggregation must have a field set.
+     */
+    public function testGeoDistanceAggregationExceptionWhenFieldIsNotSet()
+    {
+        $agg = new GeoDistanceAggregation('test_agg');
+        $agg->setOrigin('50, 70');
+        $agg->getArray();
+    }
+
+    /**
+     * Test if exception is thrown when origin is not set.
+     *
+     * @expectedException \LogicException
+     * @expectedExceptionMessage Geo distance aggregation must have an origin set.
+     */
+    public function testGeoDistanceAggregationExceptionWhenOriginIsNotSet()
+    {
+        $agg = new GeoDistanceAggregation('test_agg');
+        $agg->setField('location');
+        $agg->getArray();
+    }
+
+    /**
+     * Test if exception is thrown when field is not set.
+     *
+     * @expectedException \LogicException
+     * @expectedExceptionMessage Either from or to must be set. Both cannot be null.
+     */
+    public function testGeoDistanceAggregationAddRangeException()
+    {
+        $agg = new GeoDistanceAggregation('test_agg');
+        $agg->addRange();
+    }
+}
-- 
GitLab