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;
+    }
+}