public function testAliases()
 {
     $this->createSampleData();
     $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);
     $result = $this->catRepository->aliases();
     $data = $result->getData()->getGatewayValue();
     $this->assertCount(1, $data);
     $this->assertSame(ES_INDEX, $data[0]['index']);
     $this->assertSame(ES_INDEX . $aliasPostfix, $data[0]['alias']);
     $this->indexRepository->updateAliases($removeAliases);
 }
 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 testUpdateAliasesMissingActionsKeyException()
 {
     $aliasActions = array('actionsWrong' => array('add' => array()));
     $request = $this->getMockBuilder('Elastification\\Client\\Request\\RequestInterface')->disableOriginalConstructor()->getMock();
     $request->expects($this->never())->method('setBody');
     $this->requestRepositoryFactory->expects($this->never())->method('create');
     $this->repositoryClassMap->expects($this->never())->method('getClassName');
     $this->client->expects($this->never())->method('send');
     try {
         $this->indexRepository->updateAliases($aliasActions);
     } catch (RepositoryException $exception) {
         $this->assertContains('Actions key is missing', $exception->getMessage());
         return;
     }
     $this->fail();
 }