/** * Check if parameters can be set to agg. */ public function testParametersAddition() { $aggregation = new TopHitsAggregation('acme', 0, 1); $aggregation->addParameter('_source', ['include' => ['title']]); $expected = ['top_hits' => ['size' => 0, 'from' => 1, '_source' => ['include' => ['title']]]]; $this->assertSame($expected, $aggregation->toArray()); }
/** * Tests if adding parameters has any effect. */ public function testParameters() { $topHitsAggregation = new TopHitsAggregation('test'); $topHitsAggregation->addParameter('_source', ['include' => ['title']]); $expectedAgg = new \stdClass(); $expectedAgg->sort = []; $expectedAgg->_source = ['include' => ['title']]; $expected = ['agg_test' => ['top_hits' => $expectedAgg]]; $this->assertEquals($expected, $topHitsAggregation->toArray()); }
/** * Check if aggregation returns the expected array. */ public function testToArray() { $sorts = new Sorts(); $aggregation = new TopHitsAggregation('test', 0, 1); $expectedAgg = new \stdClass(); $expectedAgg->size = 0; $expectedAgg->from = 1; $expectedAgg->sort = $sorts->toArray(); $expected = ['agg_test' => ['top_hits' => $expectedAgg]]; $this->assertEquals($expected, $aggregation->toArray()); }