function let(Client $elasticsearch, Searchable $searchableObject)
 {
     $searchableObject->getSearchableBody()->willReturn($this->searchableBody);
     $searchableObject->getSearchableType()->willReturn($this->searchableType);
     $searchableObject->getSearchableId()->willReturn($this->searchableId);
     $this->beConstructedWith($elasticsearch);
     $this->setIndexName($this->indexName);
 }
Example #2
0
 public function let(Client $algoliaClient, Searchable $searchableObject, \AlgoliaSearch\Index $index)
 {
     $searchableObject->getSearchableBody()->willReturn($this->searchableBody);
     $searchableObject->getSearchableType()->willReturn($this->searchableType);
     $searchableObject->getSearchableId()->willReturn($this->searchableId);
     $this->beConstructedWith($algoliaClient);
     $this->index = $index;
 }
Example #3
0
 /**
  * Get the id parameter that is used by Algolia as an array.
  *
  * @param Searchable $subject
  *
  * @return string
  */
 protected function getAlgoliaId($subject)
 {
     return $subject->getSearchableType() . '-' . $subject->getSearchableId();
 }
 /**
  * Remove the given subject from the search index
  *
  * @param Searchable $subject
  */
 public function removeFromIndex(Searchable $subject)
 {
     $this->elasticsearch->delete(['index' => $this->indexName, 'type' => $subject->getSearchableType(), 'id' => $subject->getSearchableId()]);
 }