public function testSearchGermany()
 {
     $query = array('query' => array('term' => array('country' => array('value' => 'germany'))));
     /** @var SearchResponse $response */
     $response = $this->searchRepository->search(ES_INDEX, self::TYPE, $query);
     $this->assertEquals(2, $response->getHits()['total']);
 }
 public function testUpdateAliases()
 {
     $this->createSampleData();
     $aliasesResponse = $this->indexRepository->getAliases(ES_INDEX);
     $aliasesAsArray = $aliasesResponse->getData()->getGatewayValue();
     $this->assertCount(1, $aliasesAsArray);
     $this->assertTrue(isset($aliasesAsArray[ES_INDEX]));
     $this->assertEmpty($aliasesAsArray[ES_INDEX]['aliases']);
     $aliasPostfix = '-alias';
     $addAliases = array('actions' => array(array('add' => array('index' => ES_INDEX, 'alias' => ES_INDEX . $aliasPostfix))));
     $removeAliases = array('actions' => array(array('remove' => array('index' => ES_INDEX, 'alias' => ES_INDEX . $aliasPostfix))));
     $this->indexRepository->updateAliases($addAliases);
     $aliasesResponse = $this->indexRepository->getAliases(ES_INDEX);
     $aliasesAsArray = $aliasesResponse->getData()->getGatewayValue();
     $this->assertCount(1, $aliasesAsArray);
     $this->assertTrue(isset($aliasesAsArray[ES_INDEX]));
     $this->assertCount(1, $aliasesAsArray[ES_INDEX]['aliases']);
     /** @var SearchResponse $searchResult */
     $searchResult = $this->searchRepository->search(ES_INDEX . $aliasPostfix, self::TYPE);
     $this->assertSame(count($this->data), $searchResult->getHits()['total']);
     $this->indexRepository->updateAliases($removeAliases);
     $aliasesResponse = $this->indexRepository->getAliases(ES_INDEX);
     $aliasesAsArray = $aliasesResponse->getData()->getGatewayValue();
     $this->assertCount(1, $aliasesAsArray);
     $this->assertTrue(isset($aliasesAsArray[ES_INDEX]));
     $this->assertEmpty($aliasesAsArray[ES_INDEX]['aliases']);
 }
 public function testSearchWithoutQueryParam()
 {
     $index = 'myIndex';
     $type = 'myType';
     $return = 'itsMe';
     $className = 'myClassName';
     $request = $this->getMockBuilder('Elastification\\Client\\Request\\RequestInterface')->disableOriginalConstructor()->getMock();
     $request->expects($this->never())->method('setBody');
     $this->requestRepositoryFactory->expects($this->once())->method('create')->with($className, $index, $type, $this->serializer)->willReturn($request);
     $this->repositoryClassMap->expects($this->once())->method('getClassName')->with(SearchRepositoryInterface::SEARCH)->willReturn($className);
     $this->client->expects($this->once())->method('send')->willReturn($return);
     $result = $this->searchRepository->search($index, $type);
     $this->assertSame($return, $result);
 }