public function testSetSize() { $facet = new TermsStats('test'); $facet->setSize(100); $data = $facet->toArray(); $this->assertArrayHasKey('size', $data['terms_stats']); $this->assertEquals(100, $data['terms_stats']['size']); }
public function testQuery() { $client = $this->_getClient(); $index = $client->getIndex('test'); $index->create(array(), true); $type = $index->getType('helloworld'); $doc = new Document(1, array('name' => 'tom', 'paid' => 7)); $type->addDocument($doc); $doc = new Document(2, array('name' => 'tom', 'paid' => 2)); $type->addDocument($doc); $doc = new Document(3, array('name' => 'tom', 'paid' => 5)); $type->addDocument($doc); $doc = new Document(4, array('name' => 'mike', 'paid' => 13)); $type->addDocument($doc); $doc = new Document(5, array('name' => 'mike', 'paid' => 1)); $type->addDocument($doc); $doc = new Document(6, array('name' => 'mike', 'paid' => 15)); $type->addDocument($doc); $facet = new TermsStats('test'); $facet->setKeyField('name'); $facet->setValueField('paid'); $query = new Query(); $query->addFacet($facet); $query->setQuery(new MatchAll()); $index->refresh(); $response = $type->search($query); $facets = $response->getFacets(); $this->assertEquals(2, count($facets['test']['terms'])); foreach ($facets['test']['terms'] as $facet) { if ($facet['term'] === 'tom') { $this->assertEquals(14, $facet['total']); } if ($facet['term'] === 'mike') { $this->assertEquals(29, $facet['total']); } } }